10 NEW SUPER LAPTOPS PUT TO a TEST!
) > : Gece = is
ic
SEPT — 1991
DOUBLE YOUR HARD DISK SPACE
KE) ry | LI EGAL $ S] T RA ly TEGII ES FOR HO! MEO U La FFICES
DOS 5- naapld de USER’S GUIDE
CLUSIN Wel RE qi LM n iOTIO! N VIDEO ) FRON Mi AD DIS SK!
VE. RE WLS r ey
Now “495 Stops The Clock
On Over 100 GEnie Services.
Now enjoy unlimited non-
prime time usage of over 100
popular GEnie Service features.
For just $4.95 a month.* You get
everything from electronic mail to
exciting games and bulletin
boards. Nobody else gives you so
much for so little.
3. At the U#=prompt, enter
XTX9G482,COMPUTE
then press <RETURN>.
4. Have a major credit card or
your checking account number
ready.
For more information in
the US. or Canada, call
Moneyback guarantee
Sign up now. If you're not
satisfied after using
GEnie for one month,
we'll refund your $4.95.
Plus enjoy access to sofware Sign-up today. 1-800-638-9636.
libraries, computer bulletin Just follow these simple steps.
boards, multi-player games and 1. Set your communication soft-
more for just $6 per non-prime ware for half duplex (local echo),
hour for all baud rates up to up to 2400 baud.
2400. And with GEnie there’sno _2.. Dial toll free 1-800-638-8369. 5 5
sign-up fee. Upon connection, enter HHH GE Information Services
*Applies only in US, Mon-Fri, 62M-8AM local time and all day Sat, Sun, and select holidays. Prime time hourly rate $18 up to 2400 baud.
Some features subject to surcharge and may not be available outside US. Prices and producss listed as of Oct. 1, 1990 subject to change.
Telecommunication surcharges may apply. Guarantee limited to one per customer and applies only to first month of use.
Circle Reader Service Number 205
64/128 VIEW
New 64 titles were scarce at the
Consumer Electronics Show, but there’s
still some fun coming our way.
Tom Netsel
he 1991 International
Summer Consumer Elec-
tronics Show closed its
doors recently in Chica-
go after 55,629 attendees
logged many extra miles on
their Nike and Reebok Fre-
quent Hiker plans. It took a
lot of shoe leather to visit
each of the 1,019 exhibits
that filled a half-million
square feet of exhibit
space, and finding new 64 ti-
tles in this electronic mid-
way was something of a chal-
lenge.
There were plenty of PCs
and Amigas displaying new
software, but there were no
64s. Many companies say
they no longer get enough re-
turn on their investment to
continue producing prod-
ucts for the 64,
After much asking, prob-
ing, and poking around, how-
ever, | did manage to locate
some new products. Rea-
dySoft says its multidisk
Wrath of the Demon should
be out in September, but
look for it on cartridge, too.
“With the introduction of the
Commodore Game Console
in England, cartridge
games developed for that
system will work just fine on
a 64,” says ReadySoft Sen-
ior Vice President Elizabeth
Arnold.
This state-of-the-art
game contains more than
3MB of graphics data, 600
screens of action, and 1400
frames of animation. Look
for more cartridges and
disks coming from the U.K.,
since ReadySoft has joined
Empire Software and will be
importing some of its prod-
ucts. Another title due out in
late fall is Guy Spy.
At Electronic Arts, affiliat-
ed labels SSI and Mindcraft
have new offerings that
should be exciting. Step up
to the plate with Strategic
Simulations’ Ultimate Base-
ball. That's the working title,
but whatever it's called, this
simulation lets you play, man-
age, or watch one game or
a whole 162-game season.
War game fans haven't
been forgotten. Look for an
SSI war game coming soon.
It's called Medieval Lords.
Gateway to the Savage
Frontier is the first of a new
AD & D series from SSI. It
takes place in a mysterious
territory in the world of Forgot-
ten Realms. Starting in the
town of Yarter, venture over
a vast wilderness on a
quest for four magical statu-
ettes.
Later this year, look for
The Magic Candle, Vol. 2
from Mindcraft. In this se-
quel explore the dreaded
realm of Gurtex in search of
the dark secrets of black can-
dies. A new user interface
lets you capture conversa-
tions, eliminating the need
for constant note taking. As-
tound friend and foe with
new spells, such as Glam-
our, Courage, and Terrify.
The Electronic Zoo is bun-
dling 20 popular games
from Great Britain and send-
ing them to the U.S. as Star
Collection. These hits
should be available now.
Konami is another compa-
ny supporting the 64—and
now one of the more active
ones. Over the next few
months, look for five new
games based on popular
movies and hit television pro-
grams. Look for such excit-
ing titles as Bart Simpson's
Adventure, Simpsons’ Ar-
cade Game, Teenage Mu-
tant Ninja Turtles: The Ar-
cade Game, Back to the Fu-
ture Ill, and Predator2. OG
CONTENTS
64/128 VIEW , G-1
The 1991 Summer CES had little for the 64, but new
products are heading our way. By Tom Netsel.
COMMODORE CLIPS G-2
Gazette goes online with QuantumLink, Commodore
earnings are up, and more. By Tom Netsel.
A GUIDE TO COMMODORE
USER GROUPS (PART II) G-4
User group listings for Nevada-Wyoming and around
the world. By Kandi Sykes and Dana Stoll.
REVIEWS G-10
Back to the Future Il, Fastfingers, Nightbreed, and
Power Drift.
FEEDBACK G-16
Questions and answers.
GEOS 6-19
GEOS telecommunicating. By Steve Vander Ark.
MACHINE LANGUAGE G-20
Use binary fractions. By Jim Butterfield.
BEGINNER BASIC G-21
Crashproof your programs. By Larry Cotton.
PROGRAMMER’S PAGE G-22
Programming tips for the 64. By Randy Thompson.
D’IVERSIONS G-24
Has the robot revolution started? By Fred D'Ignazio.
PROGRAMS G-25
Spanish Vocabulary Quiz G-25
SpeedSwap G-28
Credit Control G-29
Plotter G-31
Showdown G-32
Medium Density Driver G-34
RapidFormat 128 G-35
MLX G-38
“Gazette
Gallery” presents
Lutanist,
by Jack (DocJM)
Modjallal of
Encino, California,
as this
disk’s Picture of
the Month.
COMMODORE CLIPS
Tom Netsel
GAZETTE GALLERY
Each month Gazette Disk fea-
tures a collection of the best
64/128 artwork submitted by
our readers. We pay $50 for
each piece of art we accept
for “Gazette Gallery” and an ex-
tra $50 for the one selected as
Picture of the Month and fea-
tured on this page. To submit
your original artistic creations,
send them to Gazette Gallery,
COMPUTE Publications, 324
West Wendover Avenue,
Suite 200, Greensboro, North
Carolina 27408.
Gazette Goes Online
Two of the biggest names in
the Commodore world are join-
ing forces to offer 64 and 128
users an exciting new dimen-
sion to their computing activi-
ties. COMPUTE's Gazette will
soon be online at Quantum-
Link (8619 Westwood Center
Drive, Vienna, Virginia 22180;
800-827-8444).
You've read Gazette for
years; soon you can access
Gazette electronically on the
only Commodore-specific on-
line service. With your comput-
G-2
COMPUTE
er, modem, and Q-Link's free
terminal software, you'll be
able to access many of your fa-
vorite Gazette features.
Check Gazette and Q-Link as
details become available
about our upcoming debut.
Check This Out
Sparks Electronics (P.O. Box
0475, St. Joseph, Missouri
64504-0475) has released
S.E.C. Check Register 128
($16) for the 128 in 80-col-
umn mode. Designed to man-
age personal or small busi-
ness checking accounts,
S.E.C. Check Register can
contain up to 750 entries.
Special emphasis is given
to data entry, recurring pay-
ees, check printing, and print-
ing of register data. Recurring
payee files can contain up to
54 names and adaresses, but
users can load others into the
current register for an unlimit-
ed number of payees.
Earnings Up at Commodore
Commodore International Lim-
ited reported $10.6 million in
income on sales of $246.3 mil-
lion for the third fiscal quarter
of 1991, which ended March
31. This represents a substan-
tial increase in earnings and
a 16-percent increase in
sales compared to the year-
ago quarter. An extraordinary
charge of $9.2 million relating
to a previously announced
court settlement of litigation
was recorded in the quarter,
resulting in net income of
$1.4 million.
For the nine months that
ended March 31, 1991, in-
come increased tenfold to
$54.1 million compared with
$5.0 million in the prior year.
Sales increased 21 percent to
$830.7 million, compared
with $689.2 million in the year-
ago period. Net income for
the nine months increased nin-
efold to $44.9 million, or
$1.37 per share.
Every product line contribut-
ed to revenue growth in the
quarter. Unit sales of Amiga
computers increased 30 per-
cent, while the 64 product
line registered unit growth of
48 percent, largely due to ex-
panded sales in new markets.
The Krynn Epic Continues
Strategic Simulations announc-
es the release of Death
Knights of Krynn ($39.95) for
the 64. (SSI products are dis-
tributed by Electronic Arts,
1820 Gateway Drive, San
Mateo, California 94404.)
This game is the sequel to the
popular Advanced Dungeons
& Dragons fantasy role-play-
ing game Champions of
Krynn.
Death Knights of Krynn be-
gins a year after the conclu-
sion of Champions of Krynn.
At a victory party on the anni-
versary of the evil force's de-
feat, the celebration is inter-
rupted by an unwelcome par-
ty crasher. The undead Sir
Karl sweeps in on a Death
Dragon and steals a revered
Dragonlance. The adventure
begins as the champions set
out to track Sir Karl and recov-
er the stolen item.
Your favorite characters
from Champions of Krynn can
be imported to Death Knights
of Krynn, along with their ac-
cumulated items and wealth.
This is a new feature not pre-
viously offered in AD & D fan-
tasy role-playing games.
Big Al and Pals
Return to Chicago's golden
age of gangsters and take on
the Mob in The Untouchables
($14.95) from Ocean of Amer-
ica (distributed by Electronic
Arts, 1820 Gateway Drive,
San Mateo, California 94404).
Guide Eliot Ness's band of
mob-busters through five lev-
els of arcade action: the Ware-
house Bust, the Border Raid,
the Alley Shootouts, the Rail-
way Station Confrontation,
and the Rooftop Duels. a
WE CAN RECONFIGURE ANY OF OUR COMPUTER PACKAGES TO YOUR
SPECIFICATIONS. CALL FOR DETAILS!
MJO/N/T/G/O/MJE|R|Y) RIAIN|T} as
COMMODORE
AMIGA
ESTABLISHED
1967
C=commodore:
1084
MONITOR
C=Commodore: eta tegel ale
80 COL. THERMA
®
CNG ecnomone) || PRINTER wciucs
Includes: SPECIAL
Quantum Link Software Sie saris
MAGNAVOX
= 13 COLO
ae Scat GB
ep ETE MONITOR
eeree — W/SOUND! (RECONDITIONED)
AVE BIG SSS
WHEN YOU BUY ONE OF OUR ALL IN ONE PACKAGES
+ Commodore 64C
Computer
+ Commodore 1541
Pyar + Commodore 64C | » Commodore 64C
* Quantum Link Computer Computer
Software * Commodore 1541 | » Commodore 1541
5 SOFTWARE haa pe ai a rig a
PACKAGES INCLUDED: || * 80 Column Printer | + 80 Column Printer
+ Advanced Tactel Fighter || * 12" Monitor * Color Monitor
+ Infitrator I + Hamar * Quantum Link * Quantum Link
SIMD oe Software Software NX-1000¢ $166.95 GSK 40. sin tccsoses $279.95
NX-1000C Rainbow.....$195.95 CoN Cartage). 5 -
NX-1001 srs
i Color Option
NX-1020Rainbow.
NX-2420....
NX-2420 Rainbo
ua —-) =9
COMMODORE 1541II COMMODORE 1571
DISK DRIVE DISK DRIVE
1750 Clone RAM Expansion........s.r-..189 Micro C-128 Power Supply.
Aprotek 2400 Baud Modem for 64/128....$99.95 Super Snapshot 5.0. $59,
Cardco G-Wiz_Interiace $48.95. Yetec S, Graphix Ur. IntertC8..nnnune$29.05
Gommecre eee . Xetec S. Graphix Sr. Inted ace. .....s.eve-e$49.95
Excellerator Plus FSDIi Power Supply....$19.95
OTHER ACCESSORIES FOR YOUR COMMODORE COMPUTER AVAILABLE
Circie- Reader Service Number 187:
COMPUTE
A GUIDE TO
PART TWO
EDITED BY KANDI SYKES
AND DANA STOLL
UNIPHOTO/PICTOR
ere's Part 2 of the list of
user groups, concluding
with those in New Jersey
through Wyoming, APOs,
and other countries.
NEW JERSEY
Info 64 Commodore User
Group, c/o Jerry Fleischer,
186 Delmar Ave., Glen
Rock, NJ 07452
Hillsdale Commodore 64 Users
Club, 32 Esplanade Lake
Dr., Hillsdale, NJ 07642
Garden State Commodore &
MS-DOS User's Group, 89
Stratford Rd., Tinton Falls, NJ
07724 (BBS# 201-938-3885)
Commodore User Group of Cen-
tral New Jersey, 112 Old
Bridge Rd., Matawan, NJ
07747
Morris Area Commodore User
Group (MACUG), P.O. Box
492, Mt. Tabor, NJ 07878
Rancocas Valley Users Group
(RVUG), c/o G. C. Heath,
806 Windsor Dr., Cinnamin-
son, NJ 08077 (BBS# 609-
267-7945)
Data Exchange—Beneficial Us-
ers Group 64/128 (D.E.—
B.U.G. 64/128), 713 Second
St., Dunellen, NJ 08812
Commodore E. Brunswick Us-
ers Group (CEBUG), P.O.
Box 314, E. Brunswick, NJ
08816
NEW MEXICO
New Mexico Commodore User
Group, P.O. Box 37127, Al-
buquerque, NM _ 87176
(BBS# 505-268-4662)
Los Alamos Commodore Us-
ers Group, 4214-A Arizona
St., Los Alamos, NM 87544
(Voice# 505-662-5934)
Taos Area Commodore User's
Group, P.O. Box 5686,
Taos, NM 87571
The Southern New Mexico Com-
modore User’s Group, P.O.
Box 4437, University Park
Branch, Las Cruces, NM
88003
Commodore Users Group of
Roswell (CUGOR), 1619 N.
Kansas, Roswell, NM 88201
NEW YORK
New York Commodore Interest
Group (NYC=ig), 115 Essex
St., Box #146, New York, NY
10002
Kids’ Computer News, Si.
Hilda’s & St. Hugh's School,
619 W, 114th St., New York,
NY 10025
Folklife Terminal Club, Box 555-
R, Co-op City Station, Bronx,
NY 10475
Brooklyn Commodore User’s
Group, c/o Grodman, 1111
Shore Pkwy., Brooklyn, NY
11228 (Voice# 718-331-
3835)
Queens Commodore Users
Group (QCUG), P.O. Box
129, Ozone Park, NY 11417
(BBS# 718-366-7445)
Commodore Users Group of
Greater New York, 190-25
Woodhull Ave., Hollis, NY
11423
N.C.C.C., P.O. Box 233, Sea
Cliff, NY 11579
Commodore Long Island Club,
15 Rochelle Ct., Amityville,
NY 11701 (BBS# 516-489-
4061)
Brentwood 64/128 Computer
Club, Public Library, 2nd
Ave. & 4th St., Brentwood,
NY 11717
Mohawk Valley Computer User
Group, c/o William Nowak,
3818 Stinson Ave., Tribes
Hill, NY 12177
Tri-City Commodore User’s
Group (TCCUG), P.O. Box
12742, Albany, NY 12212-
2742
Hudson Valley Commo-
dore Club, P.O. Box 2190,
Kingston, NY 12401
The Commodore Computer
Club of Syracuse, 233 Wil-
liams St., Minoa, NY 13116
(BBS# 315-656-3544)
Oswego Commodore User
Group, 402 Mahar Hall,
State University College,
Oswego, NY 13126
Commodore User Group of Mas-
sena (COMA), Star Tech,
280 E. Orvis St., Massena,
NY 13662
The Niagara Falls Commodore/
IBM Club, 2405 Willow Ave.,
Niagara Falls, NY 14305
Rainbow Computer Users
Group, c/o St. James United
Methodist Church, 4661 Por-
ter Rd., Niagara Falls, NY
14305
Geneva Commodore Users’
Group, 25 Pine St., Geneva,
NY 14456
Commodore Users Group of
Rochester (CUGOR), P.O.
Box 23463, Rochester, NY
14692 (BBS# 716-621-5908)
NORTH CAROLINA
Triad Commodore Users
Group, P.O. 10833, Greens-
boro, NC 27404
Bailey’s User Group (BUG),
P.O. Box 70, Holly Springs,
NC 27540
Commodore Users Group of Lin-
colnton, Rte. 3, Box 457, Lin-
colnton, NC 28092
Salisbury Compute, Charles A.
Huffman, 280 Deal Creek
Dr., Salisbury, NC 28144
Asheville-Buncombe —__ User
Group (A-BUG), P.O. Box
15511, Asheville, NC 28813
NORTH DAKOTA
Central Dakota Commodore
Club, P.O. Box 1584, Bis-
marck, ND 58502-1584
OHIO
The Commodore Club of Cen-
tral Ohio (CCCO), P.O. Box
292392, Columbus, OH
43229 (BBS# 614-523-3459)
Ashtabula County Commodore
Users Group (ACCUG),
1034 Michigan Ave., Ashtab-
ula, OH 44004
Basic Bits Commodore Group
(BBCG), P.O. Box 447, N.
Ridgeville, OH 44039
NorthEast Ohio Computer Us-
ers Group (NEOCUG), P.O.
Box 196, Wickliffe, OH
44092
Portage County Commodore
Family User Group
(PCCFUG), P.O. Box 901,
Ravenna, OH 44266
Akron Area Commodore Users
Group (AACUG), P.O. Box
9293, Akron, OH 44305-
9293
Trumbull Commodore Users
Group (TRUMCUG), P.O.
Box 8632, Warren, OH
44484
Mahoning Valley Commodore
Club, P.O. Box 1180, Young-
G-5
stown, OH 44501
Canton/Alliance/Massillon Users Group
(CAMUG), P.O. Box 2423, N. Canton,
OH 44720 (BBS# 216-453-3319)
Computer Erie Bay Users Group
(CEBUG), P.O. Box 1461, Sandusky, OH
44870
Shelby Computer User Group, P.O. Box
512, Shelby, OH 44875
Western Cincinnati Commodore Club
(WESTCOM), P.O. Box 89, Amelia, OH
45102-0089 (Voice# 513-753-7387)
Cincinnati Commodore Computer Club, c/
o Cure of Ars School, Berwick and Roe
Streets, Cincinnati, OH 45227 (Voice#
513-248-0025)
Southwestern Ohio Commodore Users
Group (SWOCUG), P.O. Box 46644, Cin-
cinnati, OH 45246
Dayton Area Commodore Users Group
(D.A.C.U.G.), 1117 Lavern Ave., Ketter-
ing, OH 45429 (BBS# 513-878-1408)
Chillicothe Commodore Computer Users
Group (ChiICUG), P.O. Box 6014, Chil-
licothe, OH 45601
Hancock User's Group (HUG-64), P.O. Box
632, Findlay, OH 45839-0632 (BBS# 419-
423-6648)
OKLAHOMA
Commodore User's Group of Lawton, P.O.
Box 3392, Lawton, OK 73502
Commodore Users of Bartlesville, 1920
SW Santa Fe, Bartlesville, OK 74003
(BBS# 918-336-3872)
Tulsa Area Commodore Users Group
(TACUG), P.O. Box 52473, Tulsa, OK
74169-1842 (BBS# 918-428-2284)
Osage/Kay Commodore User’s Group
(OKCOM), 317 Woodbury, Ponca City,
OK 74601
OREGON
geoMETRIX, 20224 S. Sprague Rd., Oregon
City, OR 97045-9641
Commodore East County (C.E.C.), 1714 SE
35th Ave., Portland, OR 97214-5039
Crash-64 Salem Area’s Commodore Us-
er’s Group, P.O. Box 241, Salem, OR
97308 (BBS# 503-585-3092)
Lane County Commodore User Group
(LCCUG), P.O. Box 11316, Eugene, OR
97440
Coos Computer Club, 2175 Everett St.,
North Bend, OR 97459-2336 (Voice#
503-756-4408)
PENNSYLVANIA
A-K Valley Computer Club, 1762 Fairmont
St., New Kensington, PA 15068
Bettis Commodore Users Group, 592 Ar-
bor Ln., Pittsburgh, PA 15236
Castle Commodore Computer Club, P.O.
Box 961, New Castle, PA 16103
North Coast Commodore Users Group
Erie, P.O. Box 6117, Erie, PA 16512-
6117 (BBS# 814-459-1947)
Centre Area Commodore Computer Club,
c/o Neil Dowlin, 1104 S. Atherton St.,
State College, PA 16801-6001
Blue Juniata Commodore Users Group, 23
Oakland Ave., Lewistown, PA 17044
(BBS# 717-248-4877)
Huntingdon County Hackers, P.O. Box 132,
Mill Creek, PA 17060
Harrisburg Area Computer Group, 721 S.
G-6 COMPUTE
29th St., Harrisburg, PA 17111 (BBS#
717-558-9080)
White Rose Commodore Users Group,
P.O. Box 7501, York, PA 17404-0501
Lehigh Valley Commodore User Group, c/
o Fred Knerr, P.O. Box 2, New Tripoli,
PA 18066 (Voice# 215-298-2516)
Scranton Commodore Users Group
(S.C.U.G.), P.O. Box 244, Scranton, PA
18501-0244 (BBS# 717-489-8001)
EPA Commodore Users Group, Edward H.
Cohen, 1712 Aidenn Lair Rd., Dresher,
PA 19025
Horsham Amiga/64, 20-A Lumber Jack Cir.,
Horsham, PA 19044
Main Line Commodore Users Group
(MLCUG), 1046 General Allen Ln., West
Chester, PA 19382 (BBS# 215-354-9750
and Voice# 215-388-1581)
Worldwide Commodore Users Group (In-
ternational Headquarters and Share-
ware Registry), P.O. Box 337, Blue
Bell, PA 19422
Buxmont Commodore and IBM Users
Group, 1206 Cowpath Rd., Hatfield, PA
19440
Antelope Valley Commodore Users
Group, P.O. Box 4436, Lancaster, PA
17603 (BBS# 805-272-9140)
RHODE ISLAND
Narragansett Commodore Users Group,
P.O. Box 8707, Cranston, RI 02920
(BBS# 401-737-9774)
SOUTH CAROLINA
Greenville Commodore Users Network
(GCUN), P.O. Box 5272, Station B,
Greenville, SC 29606
SOUTH DAKOTA
Amiga and Commodore 64 Users Group,
P.O. Box 18, Vermillion, SD 57069
(Voice# 605-624-347 1)
TENNESSEE
Clarksville Commodore Users Group, P.O.
Box 2171, Clarksville, TN 37042-2171
Multi-User Computer Club, 213 Holly Ave.,
S. Pittsburg, TN 37380-1313 (BBS# 615-
837-8352)
Chattanooga Commodore Users, 1406
Blackwell Dr., Chattanooga, TN 37412
East Tennessee Commodore Club, P.O.
Box 495, Knoxville, TN 37901
Raleigh-Bartlett Hackers CUG, c/o James
Patrick, 3457 Gatewood Dr., Memphis,
TN 38134
TEXAS
Society of Computer Owners and P.E.T.
Enthusiasts (SCOPE), P.O. Box
833095, Richardson, TX 75083-3095
Texas Commodore User's Group, P.O. Box
623, Royse City, TX 75089
Central Texas Computer Users Group, 902
Carlisle, Killeen, TX 76541-7321
Commodore Houston Users Group
(CHUG), c/o Ben Daily, P.O. Box 612,
Tomball, TX 77375-0612 BBS# 713-445-
2484 and Voice #713-664-2484
Southmost In Texas Commodore User’s
Group (SITCOM), c/o Charles Duncan,
74 Laura Ln., Brownsville, TX 78521
Amistad Commodore Users Group, P.O.
Box 421212, Del Rio, TX 78842
Top of Texas Commodore (TOTCOM), Box
2851, Pampa, TX 79066-2851
Tri-State Commodore Users Group (Tri-
CUG), P.O. Box 8971, Amarillo, TX
79114-8971 (BBS# 806-355-3031)
Commodore Users of Texas (CUT), 7007
Memphis Ave., Lubbock, TX 79413
(Voice# 806-792-7121)
El Paso Commodore User Group, P.O. Box
370934, El Paso, TX 79937 (BBS# 915-
590-7678)
UTAH
Mountain Computer Society, 3898 Chery!
St., West Valley, UT 84119
Moab Commodore User's Group, 860 S. An-
tiquity Ln., Moab, UT 84532
VERMONT
Springfield Area Computer Club (SACC), 6
Bellows Rd., Springfield, VT 05156
Maple Valley Commodore Users Group, c/
o Dave Swainbank, P.O. Box 106, St. Al-
bans, VT 05478 (BBS# 802-524-9387)
VIRGINIA
Washington Area Commodore User
Group (WAC), P.O. Box 3602, Fairfax,
VA 22038-3602
Dale City Commodore Users Group, P.O.
Box 2675, Dale City, VA 22193-0265
(BBS# 703-361-7565)
Fredericksburg Commodore Club, P.O.
Box 8438, Fredericksburg, VA 22404-
8438
Middle Peninsula Commodore User
Group, P.O. Box 391, Gloucester, VA
23061 (BBS#s 804-642-3697 and 804-
642-4293)
CURVE, P.O. Box 28284, Richmond, VA
23228 (BBS#s 804-266-1763 and 804-
737-7936)
The Richmond Area Commodore Enthu-
siasts (TRACE), 2920 Pinehurst Rd.,
Richmond, VA 23228
Peninsula Commodore User Group of Vir-
ginia, 211 Nina Ct., Newport News, VA
23602 (BBS# 804-838-2118)
Henry County Commodore Computer
Club, c/o Doug Wilcox, 1047 Graves St.,
Martinsville, VA 24112
Lynchburg User Group, Rte. 2, Box 180, Lyn-
chburg, VA 24501
Commodore Users of Lynchburg (CUOL),
P.O. Box 3386, Rivermont Station, Lyn-
chburg, VA 24503
WASHINGTON
Renton Computer Group, 11308 SE 269th
St., Kent, WA 98031
E/T, P.O. Box 1767, Bothell, WA 98041-1767
South King County Commodore User
Group (SKCCUG), P.O. Box 5241,
Kent, WA 98064-5241
NW Commodore User Group, 2565 Dexter
N #203, Seattle, WA 98109 (BBS# 206-
281-7661)
PSACE, 1313 5th Ave. W, Seattle, WA 98119-
3410
University of Washington Commodore Us-
er Group (UWCUG), P.O. Box 25878, Se-
attle, WA 98125 (BBS# 206-281-7661)
Commodore Bellingham User's Group
(CBUG), P.O. Box 2756, Bellingham, WA
98227 (BBS# 206-647-7120)
The Lowest Prices in theWorld on
Commodore-Ready Printers! Really!!
~ , Sc@r*
ONLY
*159” ¢
Full color ri
Commodore-ready!
NX-1000C Rainbow
Printin full color! Near-letter quality at 36 cps and high-
speed draft at 144 cps features the new paper parking
function. Convenient front panel controls. Great for
extra-impact graphics and text. This is the Commo-
dore-ready version—no additional interfaces or cables
are required. Sug, Retail
NX-1000C Rainbow Color Printer,
Commodore Ready 75783 A
LOWEST PRICE EVER! $159.95
Quality TENEX
Power Supplies
From
$3 4%
Lifetime Warranty!
TENEX MW 701-A. Conservatively rated at 5V
and 1.8A, this unit for the C64 features a double-
fused system. Its new heat-sink design allows cooler
Operating temperatures inside the case. Lifetime
warranty. Sug. Retail $49.95
TENEX MW 701-A 84513 $34.95
TENEX MW 705. Perfect for your C-1 28! This is a
heavy-duty, switching power supply rated at 3 amps
at SVDC. Lifetime warranty. Sug. Retail $69.95
TENEX MW 705 90686 $49.95
Printer Accessories
Black Ribbon for NX-1000C/NX-1000C
Rainbow Color Printer 75471 $5.95
Color Ribbon for NX-1000/NX-1000C
Rainbow Color Printer 75485 $9.95
Dust Cover for NX-1000C/NX-1000C
Rainbow Color Printer 77789 $8.95
THE COMPUTER PRINTER
ONLY
$139”
Ready to plug into your
Commodore and go!
NX-1000C
This is the Commodore-ready version of the NX-
1000. You can just plug it in and start printing—no
additional interfaces or cables are required.
Sug. Retail
NX-1000C Printer 75060
LOWEST PRICE EVER! $139. 95
Don't miss out on the hottest new
products and great prices on the most
popular hardware and software!
Call Today for your FREE catalogs!!
TENEX Computer Express
P.O. Box 6578
South Bend, IN 46660
(219) 259-7051 — FAX (219) 259-0300
We gladly accept mail orders!
COMMODORE 64 and COMMOD:
lead-times, product prices and s
ronics, Ltd. AMIGA is a regist
APO, FPO, AK. HI, CN, VI, GU, and foreign orders are subject to additional shipping charges.
Circle Reader Service Number 170
*Shipping, Handling, Insurance
Order Amount Charge
rademark of Commodore Amiga Inc.. NOTE: Due to publishing
G50
Club 64, 6735 Tracyton Blvd. NW, Bremaer-
ton, WA 98310
University Place Commodore Home Users
Group (UPCHUG), P.O. Box 11191, Ta-
coma, WA 98411-1101 (BBS# 206-565-
0690)
Lewis County CBM Users Group,
c/o Al Kistenmacher, 2476 Pell-Mc-
Donald Rd., Chehalis, WA 98532
Tri-City Commodore Computer Club (TC
CUBED), P.O. Box 224, Richland, WA
99352-0224 (BBS# 509-588-6822)
WEST VIRGINIA
Bluefield User Group (BUG 20/64), P.O.
Box 1190, Bluefield, WV 24701
Commodore Home User’s Group (CHUG),
81 Lynwood Ave., Wheeling, WV 26003
WISCONSIN
Lakeshore Commodore Core, 519
Westwood Dr., Sheboygan Falls, WI
53085
Computer Hobbyists Involved in Personal
Systems (CHIPS), P.O. Box 1006, West
Bend, WI 53095
Wisconsin Association of Vic/C= Enthu-
siasts (WAVE), 1020 Kurtis Dr., Elm
Grove, WI 53122
Milwaukee Area Commodore Enthusiasts
(M.A.C.E.), P.O. Box 26216, Milwaukee,
WI 53226
Madison Area Commodore Users Group
(MACUG), P.O. Box 1305, Madison, WI
53701-1305 (BBS# 608-277-9775 and
Voice# 608-831-6995)
Price County Computer User Group, 630
Knox St., Prentice, WI 54556
WYOMING
Cheyenne Association of Computer En-
thusiasts (CACE), P.O. Box 1733, Chey-
enne, WY 82003-1733
Casper Commodore Users Group
(CCUG), c/o Crazy Mountain Software,
511 E. 2nd St., Casper, WY 82601
U.S. ARMED SERVICES ABROAD
The Muenster Garrison User’s Group, c/o
Mr. Maki, 583rd Ord Co., APO, NY
09078
Commodore Computer Users Group—Hei-
delberg, P.O. Box 232 (147th Postal),
APO, NY 09102
Chicksands Computer Club (C cubed)—
England, c/o Erik Pedersen, Box 148
6950th ESG, APO, NY 09193
USER GROUPS OUTSIDE THE U.S.
AUSTRALIA
Commodore Computer Users Group
(QLD), P.O. Box 274, Springwood Qld.,
Brisbane, Queensland 4127, Australia
Commodore Hornsby User Group, P.O.
Box 1578, Hornsby Northgate, N.S.W.
2077, Australia (BBS# 61-02-484-2874)
C64 Computer User, P.O. Box 826, Young,
N.S.W. 2594, Australia
Melbourne Commodore Computer Club,
PO. Box 177, Box Hill, Victoria 3128, Aus-
tralia
Southern Districts Commodore Users
Club, 186 Elizabeth Rd., Morphett Vale,
S.A 5162, Australia (BBS# 61-08-322-
2716)
G-8 COMPUTE
BELGIUM
C64 User Group, Thauvoy Jesabel, Chee.
De Malines, 3, B-1970 Wezembeek-Op-
pem, Belgium
BRAZIL
Tcs Computer Club, Rua Job Lane 650,
04639 Santo Amaro, Sao Paulo, Brazil
CANADA
Alberta
Commodore Users of Edmonton (C.U.E.),
9550 83rd St., Edmonton, AB, Canada
T6C 3A1 (BBS#s 403-466-7656, 403-454-
2832, 403-459-7522, and 403-484-9200)
British Columbia
Cariboo Commodore 64 User Group, c/o
Nick Sardy, P.O. Box 634, 150 Mile
House, BC, Canada VOK 2GO
Chilliwack Community Computer Club,
P.O. Box 413, Sardis, BC, Canada V2R
1A7
Port Coquitlam Computer Club, 1752 Ren-
ton Way, Port Coquitlam, BC, Canada
V3B 2R7 (BBS# 604-942-0947)
New Brunswick
Moncton Users Group, Box 2984 STN A,
Moncton, NB, Canada E1C 8T8 (BBS#
506-387-7963)
North American Commodore User Group
Association (NACUGA),
c/o Dave Quinn, Box 2984, Sta. A, Monc-
ton, NB, Canada E1C 818
Ontario
Brampton User’s Group (BUG), P.O. Box
384, Brampton, ON, Canada L6V 2L3
(BBS# 416-455-3610)
Ottawa Home User Group, P.O. Box 4165,
Sta. C, Ottawa, ON, Canada K1Y 4P3
TPUG, 5334 Yonge St., Ste. 116, Willowdale,
ON, Canada M2N 6M2 (BBS# 416-733-
2933)
Quebec
Commodore 64 De |’Estrie, c/o Keith An-
drews, 805 Belmont, Sherbrooke, PQ,
Canada J1H 5P4 (Voice# 819-565-8750)
Saskatchewan
Commodore User's Group of Sas-
katchewan (C.U.G.S.), c/ 0 Barry Birch-
er, 182 Coldwell Rd., Regina, SK, Cana-
da S4R 4K8 (BBS#s 306-543-7683 and
306-949-8605)
Saskatoon Commodore Users Group
(SCUG), c/o O.B. Harvey, 2614 A Haul-
tain Ave., Saskatoon, SK, Canada S7J
1R6 (BBS# 306-249-4959)
COLOMBIA
Commodore Club Medellin, c/o Hector
lvan Londono, Apartado Aereo 1231,
Medellin, Colombia
ComSoft Commodore 64/128/ Amiga User
Group, c/o D. F. Cardenas or E. Lopez
de Mesa, Apartado Aereo 9872, Cali,
Colombia
COSTA RICA
Club Commodore de Tibas, Marvin Vega,
P.O. Box 516, Tibas, San Jose, Costa
Rica
EGYPT
Commodore 64/128 User Group, 15 Dr. Ma-
hegobe Thabet St., Agoza-Giza, Egypt
(Voice# 020-347-6149)
ENGLAND
Independent Commodore Products User
Group, P.O. Box 1309, London, N3 2UT,
England
Independent Commodore Products Users
Limited, 45 Brookscroft, Linton Glade,
Croydon, CRO SNA, England
INDIA
Bombay Commodore Club, c/o Haji Bilal
Malbarwala, Apna Ghar Housing Soci-
ety, Bldg. No. 46, B Wing, Lokhandwala
Complex, Versova, Andheri (West), Bom-
bay 400 058, India
JAPAN
Commodore Fan Club, c/o Koji Sugimura, 2-
1-10-1107 Higashi-Taishi Yao Osaka, Ja-
pan 581
MEXICO
Arcano 17-Commodore Group, Calle Plata
3307, Villa San Alejandro, Puebla, Pue.
72090 Mexico (BBS# 91-22-480-722)
Club Commodore de Juarez, Calle del Man-
antial #1448, Ciudad Juarez, Chihuahua,
Mexico 32500 (BBS#s 011-52-16-17-
3130 and 915-544-5549)
Club de Usuarios Commodore de Chihua-
hua (CUCC), R. Calderon #801, Chinua-
hua, Mexico 31240 (BBS#s 14-13-12-91
and 011-52-14-13-12-91)
NEW ZEALAND
Christchurch Commodore User Group,
P.O. Box 4665, Christchurch, 8000, New
Zealand (BBS# 0064-03-355-3896)
Waikato Commodore Computer Users’
Group (W.C.C.U.G.), P.O. Box 787, Ha-
milton, New Zealand
PAKISTAN
RAOASIM Commodore User Group, 465-
C, Satellite Town, Gujranwala, Pakistan
TIGLON, c/o Ahmed Jamal, P.O. Box 7237,
A.H. Rd., Karachi-74400, Pakistan
PERU
SoftSpa, c/o Diego or Juan Tejero Acha, Av.
Central mz. AT #5, Los Alamos de Mon-
terrico, Lima 33, Peru
SWITZERLAND
Computer Anwender Club, Postfach 29,
8042 Zurich, Switzerland
If your group is not listed, contact us at this
address:
Commodore 64/128 User Group Update
COMPUTE's Gazette
324 W. Wendover Ave., Ste. 200
Greensboro, NC 27408 ia}
GAZETTE
DISK L/BRARY
VALUE-PACKED SOFTWARE
AT AFFORDABLE PRICES
All Gazette disks are menu-driven for ease of use—and they feature complete
documentation. Just load and you're ready to go!
SpeedScript $11.95
COMPUTE Publications’ most popular program
ever. Powerful word processing package includes
SpeedScript for the 64, SpeedScript 128, spelling
checkers for both 64 and 128 versions, plus an
additional dozen support programs, including
mail-merge and word-count utilities.
Gazette Index $7.95
Every article and department from Gazette—July
1983 through December 1989 issues—is indexed:
features, games, reviews, programming, “Bug-
Swatter,”’ “Feedback,” and the other columns.
Disk features pull-down menus, help screens,
superfast searching/sorting capabilities, and
much more.
Best Gazette Games $9.95
Best dozen arcade and strategy games ever
published in Gazette all on one disk. All games for
Commodore 64. Titles: Crossroads I/: Pandemo-
nium, Basketball Sam & Ed, Delta War, Heat
Seeker, Omicron, Powerball, Q-Bird, Trap, Arcade
Volleyball, Mosaic, Power Poker, and Scorpion 1.
PSS Se
All 6 DISKS FOR ONLY $49.95!
1 SPECIAL OFFER!
t All prices include shipping & handling.
+ SpeedScript O $11.95
i Gazette Index O $ 7.95
rT Best Gazette Games O $ 9.95
i Gazette's Power Tools O $ 9.95
r The GEOS Callection O $11.95
1 128 Classics O $11.95
i Special 6-Disk Offer O $49.95
LU Subtotal
: Tax”
t Outside U.S. or Canada**
SS Total
t
L
{Residents of North Carolina and New York add appropriate sales tox. Canadian orders, add 7% goods and services fax.
** For delivery outside the U.S. or Canada, add $1 for surface mail or $3 for airmail. All orders must be in US. funds drawn on a US. bank.
Gazette’s Power Tools $9.95
Fourteen of the most important utilities for the
64 ever published in Gazette. For serious users,
Titles: MetaBASIC, Disk Rapid Transit, Mob Maker,
Ultrafont+, Quick!, Disk Editor, Basically Music,
PrintScreen, 1526 PrintScreen, Fast Assembler,
Smart Disassembler, Comparator, Sprint Il, and
Turbo Format.
The GEOS Collection $11.95
Gazette’s best 13 programs for GEOS and GEOS
128 users. Selection includes utilities, applications,
and games. Titles: Super Printer Driver, Skeet, File
Saver, Help Pad, Word Count, Directory Printer,
Quick Clock, SlideShow, File Retriever, Screen
Dumper, Font Grabber, GeoPuzzle, and
GeoConverter.
128 Classics $11.95
Thirteen of Gazette’s best 128 programs, including
utilities, games, and applications. Titles:
MetaBASIC 128, RAMDisk 128, 80-Column Disk
Sector Editor, MultiSort, Block Out, Miami Ice,
The Animals’ Show, Cribbage, XPressCard, Sound
Designer, Video Slide Show, Math Graphics, and
3-D BarGrapher.
ee
A $13.00 SAVINGS!
Name
Address
City State zip
Amount Method of
enclosed $ payment © Check or Money Order
Mail to Gazette Disks (for orders over $20)
324 W. Wendover Ave., Ste. 200
Greensboro, NC 27408
Credit card no.
Signature (required)
Daytime phone number
Exp. date
i
i
i
i
i
i
i
O VISA or MasterCard :
i
i
i
i
i
uJ
i
I
Ne ee |
REVIEWS
BACK TO THE
FUTURE II
Join Marty McFly as he trav-
els through time again in
Back to the Future II. The mov-
ie tells the comic, disjointed
story of time travel in Doc's
DeLorean time machine. The
software is mostly an arcade
game with a couple of puz-
zles added.
The object of the game is
to make your way through
five levels of play to retrieve
a sports almanac stolen by
old Biff in 2015 and given to
young Biff in 1955. Three of
these five levels are simple
arcade games, and two are
logic puzzles. While the idea
is intriguing, the program
Promises more enjoyment
than it delivers. The documen-
tation, which is brief but well
written, ties the game to the
movie by describing the
film's opening scene and
then provides the user with
background _ information
about each play level.
The game opens with
some elegant graphics se-
quences. On the first level
you must maneuver a hover-
board (a flying skateboard)
through the streets of Hill Val-
ley in the year 2015. Your mis-
sion is to reach the town hall
before running out of time or
depleting your energy.
Maneuvering the hover-
board is simple and fun. You
can move freely in all direc-
tions, accelerate, brake, and
jump. It is essential to learn
to time these last two maneu-
vers accurately, since you
must sometimes wait for pow-
er points as they drop from
the sky. Try learning to at-
tach yourself to the back of
a passing car for a joyride.
When you reach the pond
at the end of the last street,
you'll know how to get to the
town hall and complete the
mission if you've seen the
movie. Anyone who hasn't
G-10 COMPUTE
seen the movie will still quick-
ly figure out how to complete
the first task. Running out of
time never seems to be an ob-
stacle. Your time is extended
whenever you reach the end
of any of seven streets that
lead to the town hall.
Maintaining your energy
um earns you the most
points.
To aid you along the way,
speed, acceleration, and
power bonuses regularly
drop from the sky. Do not
miss an opportunity to gath-
er power points, as these
will restore all lost energy.
Semmens EEEREDERERRGRERRESSEEERERREE?
SoSoers
Scone B
TIME
4 hen
TORRITHBE 77
Marty McFly can hitch a ride through danger-filled streets.
level, on the other hand, is
considerably more difficult.
A roving gang on hover-
boards, old Biff with his
cane, stray dogs, cars, mo-
bile trash cans, and radio-
controlled hovercraft harass
you along the way. Coming
in contact with any of these
enemies lowers your energy
level. You can punch your op-
ponents on the hoverboards,
but it seems better to avoid
gang members rather than
confront them.
Cars, dogs, and hover-
craft are sufficiently powerful
to knock you from your hover-
board in one shot if you run
into them head-on. Man-
holes, slick spots, and curbs
do limited damage. Along
the way you can pick up
caps, shoes, soda cans,
newspapers, or plutonium
for extra points. Perhaps be-
cause of the obvious dan-
ger, scooping up the plutoni-
The best overall strategy is
to remain near the middle of
the screen, pick up all items
in the street, avoid all items
on the sidewalks, and use
quick, lateral movements to
evade obstacles. Back-
ground graphics are bright,
colorful, and well conceived,
but sprites are jagged with
muddy colors. It is fascinat-
ing, however, to watch the
coordination of so many
sprites with the smoothly
scrolling backgrounds, but
the program is not without
flaws. Your hoverboard can
move faster than the back-
ground, so when you reach
the edge of the screen, you
have to wait for the back-
ground to catch up. Occa-
sionally, the action on the
screen overwhelms the com-
puter, making the sound-
track and character move-
ment erratic.
The second level is a log-
ic puzzle in which you must
get Marty's girlfriend, Jennif-
er, out of a house without her
being detected. You control
both Jennifer and the other
people in the house by open-
ing doors two at a time.
When a door is opened, a
room's occupant will move to
an adjoining room. At no
time should Jenny share a
room with anyone.
The house is viewed from
above, making it difficult at
first to differentiate the char-
acters, but Jenny is the one
on the far left. You are expect-
ed to race the clock while
planning your solution, but
the Run/Stop key turns off
the clock, so running out of
time is never a problem. This
level is a nice change of
Pace because it requires
more planning than reflex ac-
tion. The puzzle, however, is
not very challenging. The
third level is a return to ar-
cade action with a special em-
phasis on violence. The ob-
ject is to reach the end of the
street safely, avoiding
armed villains, flying barrels,
rocks, and Frisbees. Your var-
ious karate kicks and punch-
es can eliminate most ene-
mies, but the individual with
the semiautomatic weapon
is virtually impossible to con-
quer or pass. This level's use
of gratuitous violence is a
disappointment, and its con-
nection to the movie’s story
line is tenuous. The fourth
scene also is linked weakly
to actual movie action, but it
takes a more imaginative
turn. Here you are to solve a
sliding block puzzle while rac-
ing the clock. One added
twist is that the block puzzle
is animated.
The fifth level is another
street race in which you
must retrieve the stolen alma-
nac. The toughest part of
this level is reaching it. Sav-
ing games in progress is not
a feature of this program, so
you must complete the first
The Gazette
canny I
Manager
(Formerly PowerPak)
Harness the productivity
power of your 64 or 128!
Turn your Commodore into
a powerful workhorse, keep track
of finances, generate reports
in a snap, manage your
money in minutes—
all with the new 1991
Gazette Productivity
Manager! Look at all
your 64/128 Productivity
Manager disk contains.
ORDER YOUR
1991 GAZETTE
PRODUCTIVITY
MANAGER
TODAY!
GemCalc 64 & 128—
A complete, powerful, user-
friendly spreadsheet with all
the features you’d expect
in an expensive commercial package
(separate 64 and 128 versions are included).
Most commands can be performed with a single keypress!
Memo Card—Unleashes the power of a full-blown
database without the fuss! Nothing’s easier—it’s a
truly simple computerized address file. Just type in
your data on any one of the index cards. Need to edit?
Just use the standard Commodore editing keys. (MasterCard and Visa accepted on orders with subtotal over $20).
Finished? Just save the data to floppy. What could be [| © ©©}©)©)©)©3. UTS"
easier? Oo YES! Please send me __ Productivity Manager disk(s)
($14.95 each).
——— Subtotal
——— Sales Tax (Residents of NC and NY please add appro-
priate sales tax for your area. Canadian orders, add
7% goods and services tax.)
——— Shipping and Handling ($2.00 U.S. and Canada, $3.00
surface mail, $5.00 airmail per disk.)
—— Total Enclosed
—Check or Money Order MasterCard — VISA
Financial Planner—Answers all of those questions
concerning interest, investments, and money manage-
ment that financial analysts charge big bucks for! You
can plan for your children’s education and know
exactly how much it will cost and how much you need
to save every month to reach your goal. Or, decide
whether to buy or lease a new car. Use the compound
interest and savings function to arrive at accurate
Credit Card No.
estimates of how your money will work for you. ; (Required)
Compute the answer at the click of a key! arena
Address
DON’T MISS OUT ON THIS : =: Town
Send your order to Gazette 1991 Productivity Manager,
324 W. Wendover Ave., Ste. 200, Greensboro, NC 27408.
POWERFUL WORKHORSE!
|
|
|
|
|
|
|
|
I
I
|
|
!
1 signature
|
|
I
I
|
|
|
|
i
|
|
|
*
REVIEWS
four levels each time you
play before you get a
chance to tackle the final
one. As an arcade game the
program succeeds, but as a
computer reproduction of
the movie, it falls far short.
The movie worked because
the action was supported by
dialogue which gave the view-
er a disjointed sense of time
travel. If Back to the Future
/l included a level that al-
lowed the player to interact
with other characters in or-
der to help Marty find his
way through time, the game
would be vastly improved. In-
stead, the characters and
time settings add nothing to
the action, and they seem to
have been chosen only as a
vehicle for standard arcade
fare. If joystick action is your
thing, you'll enjoy this pro-
gram. If, however, you're ex-
pecting to step into Marty
McFly's shoes and warp
through time, the game will
leave you flat.
JIM SMITH
Commodore 64 or 128—$29.95
IMAGE WORKS
Distributed by Konami
900 Deerfield Pkwy.
Buffalo Grove, IL 60089-4510
(708) 215-5100
Circle Reader Service Number 316
FASTFINGERS
Students of sound, take
note: If you're interested in
shaping sounds or learn-
ing about synthesis and if
you have access to a Mat-
tel Intellivision keyboard,
check out Fastfingers.
Dan Laskowski devel-
oped this program (original-
ly in 1984) with two basic
thoughts in mind: to ex-
plore the sound synthesis
abilities of the 64 SID chip
and to allow the 64 to act
as a lead synthesizer
when attached to a full-
size external keyboard by
G-12 = COMPUTE
means of a special connec-
tor. He is making the pro-
gram available again on a di-
rect basis, but it should be
noted that it is in limited sup-
ply with even fewer key-
board connectors. Availabil-
ity of the Intellivision key-
board is uncertain. At this
tain keys on the two bottom
rows (referred to in the man-
ual as piano buttons) are re-
served for playing. Octaves
are changed by selecting
them from the Sound
Shaper menu. Other keys ac-
cess preset sounds,
chords, and a sound se-
Tanase ss
Learn more about sounds and music with Fastfingers.
writing, Laskowski has three
of them and will sell an en-
tire package for $119. With
an eye (or is it ear?) toward
reaching student musicians,
he offers special rates to mu-
sic educators.
Because it is somewhat
dated, Fastfingers’ presenta-
tion is not as slick as those
of some other programs. Its
four menus are a bit crowd-
ed and clunky-looking, but
you get used to them. The
sounds, which are the impor-
tant part, are amazing.
Fastfingers was written be-
fore the MIDI explosion, yet
Laskowski programmed it
for 256 sounds and even
coaxed an extra suboctave
out of the SID chip.
While developing sounds
and recording a track on
disk are clearly easier with
an external keyboard (not
tested here), the computer
keyboard is sufficient. Cer-
quencer; permit loading and
saving sounds from disk;
and allow you to record,
play back, and control
sounds you've created.
This first menu, Play
Mode, is the default when
no control keys are
pressed. Pressing (and hold-
ing) Shift pulls down the
Sound Shaper and Effects
menu, the Control key pulls
down the Sound Banks, and
Control/Shift accesses the
Sound Shaper.
The preset sounds are sim-
ply eight sounds taken from
the sound bank for easy ac-
cess. You can use these, re-
place them with others from
the bank, or create your
own and install them. One-
finger chords are available:
three major chords, three mi-
nor ones, and six others.
The chords can be can-
celed at the press of a key,
which causes all three voic-
es to play the same note in
unison. The sound se-
quencer allows you to trig-
ger arpeggios to play auto-
matically.
To simplify things, Laskow-
ski makes use of the familiar
style of a cassette record-
er's buttons to record, re-
wind, fast-forward, and play
your works. On playback,
adjustments can be made
to speed and sound. With
this you can create melo-
dies, arpeggios, and even re-
cord a “walking bass line”
by means of the transposer
function. Once you have
laid out your sounds the
way you want them, record-
ed your melody, and ar-
ranged your transposer and
arpeggio, you can save the
whole arrangement to disk.
This Save is an old-fash-
ioned save which dumps eve-
rything onto a disk under
the lump title Sounds. This
limits you to one file per
disk, and the manual rec-
ommends dedicating the
disk to Sounds only, al-
though you could probably
use it to save something not
connected with Fastfingers.
If this is sounding too tech-
nical for you, it gets more
so. Now we come to the
heart of this program: build-
ing sounds. While not sophis-
ticated enough to include
an on-disk tutorial (this is on-
ly a one-disk program), the
Fastfingers manual guides
you through modifying exist-
ing sounds and creating
new ones. One chapter
shows you how to play with
such effects as Flang,
Pulse Width Kick, Glide,
Thicken, Weow, Swirl, Wah
(1&2), Tremolo, Pswirl, Vi-
brato, Phase Shifter, and Dig-
ital Distortion. Effects are soft-
ware effects used to simu-
late or replace hardware ef-
fects, and they work on all
three voices.
Another chapter teaches
you about building sounds,
beginning with the selection
of voice 1, 2, or 3. You learn
about adjusting the oscilla-
tors up and down in semi-
tone increments, selecting
waveforms, using harmon-
ics, using (or bypassing) fil-
ters, and adjusting the
ADSR (Attack, Decay, Sus-
tain, and Release). Students
of sound with the patience
to check out each minor ad-
justment will have a wealth
of sound to explore.
The dearth of new soft-
ware for the 64 has sent de-
velopers back to their clos-
ets to have another look at
older programs to see if
there's something to dust off
and reissue. Fastfingers is
one such program, and the
question arises, does it still
stand up? We are com-
pelled to give a qualified
Yes.
There are musical pro-
grams with far slicker presen-
tations. The tutorial and ani-
mation in the Sight and
Sound 3001 series leap to
mind. Fastfingers lacks feed-
back in that it doesn’t tell
you what sound (preset or
sound bank) or even what oc-
tave is in current use. It
seems to us, particularly if
you are using this setup in
performance as Laskowski
says you can, you ought to
have an onscreen reminder
of what you've selected. On
the other hand, the range of
sounds is almost mind-bog-
gling. Providing for the use
of a 48-key external key-
board is a unique touch
that may send some young
musicians hunting through
the classified ads to pick up
a used one.
Laskowski is first a musi-
cian, a fact that becomes ob-
vious when talking with him
or reading his manual. Al-
though certainly not the on-
ly person to envision the 64
as a synthesizer, he is the on-
ly one to take it to this de-
gree. In Fastfingers he has
taken an unusual slant on
the 64 and developed a 64
oddity, a program that's cer-
tainly not for everybody, but
will certainly intrigue those
with an interest in music.
DAVE and ROBIN MINNICK
Commodore 64 or 128—$29.95,
$69.95 with keyboard connector
DAN LASKOWSKI
9078 Copperfield Ct
Windsor, ON
Canada N8S 4H3
(519) 948-3915
Circle Reader Service Number 317
NIGHTBREED
From out of the dark shad-
ows of your mind came the
mystical thriller Nightbreed,
amovie that had people hold-
ing tightly onto their seats.
Now, it’s your joystick that
you'll want to grab tightly be-
cause Nightbreed is now an
arcade game on your 64.
You assume the role of
Boone, a guy with some psy-
chiatric problems, and begin
your journey at the gates of
Necropolis, a local grave-
yard. The object of the
game is to save the
Nightbreed from an evil or-
ganization that calls itself
Sons of the Free. Who are, or
what is, Nightbreed?
Nightbreed is a race of be-
ings older than mankind,
who possess the power to
change shape and form.
Once the game begins,
you'll constantly be chal-
lenged with different objec-
tives. Even though it's an ar-
cade-type game, you must
complete many different
tasks before progressing to
a different level of play.
At the bottom of the
screen is the game's status
panel. Here you'll find valu-
able information to help you
during play. There's a list of
objects in Boone's posses-
sion, as well as a power lev-
el that indicates his injuries,
life number, and status as ei-
GAMES, GAMES, GAMES!
| (6102) ADVENTURE ROAD / 1 - Contains 4 adventure games: Scary, Africa, Adventure & more.
5 (6123) ADVENTURE ROAD /2 - 10 textgraphic adventure games including SLEUTH.
5) (6124) ADVENTURE ROAD /3 - 8 texgraphic adventure games including HACKER.
77 (6049) C-128 GAMES / 1-40
umn Galactic, Castle and Damsels.
| 80 column Star Trek.
5) (6054) C-128 GAMES /2 - 80 col-
| umn Norad, Wargames, not Lunar
Land. Print Spock8Kirk.
| 7 (6088) C-54 GAMES / 1 - Action
games like Robbers, Whirly Bird, Blue Thunder & more.
| 5 (6089) C-54 GAMES 2 - Lotto, Attack Force, Star Trek, Joust, Derby, Defcon & more.
7) (6097) IN THE MALL’ 1 - Contains 14 arcade games. Try your skill on these gems.
7) (6099) IN THE MALL '2 - Contains 14 arcade games. Includes Moondog, Skiing, & mora.
7) (6142)IN THE MALL 3 - 12 more arcade games including BOULDER DASH and KANGA.
7 (6100) IN THE PITS | 1 - Contains 7 car games. Includes Dragster, Dodge Cars & more.
=] (6101) LADY LUCK ’ 1 - Contains 10 casino games. Roulette, Craps, BJ, Poker & more.
| 5 (202) Laby Luck 2-10 gambling games including ONE ARMED BANDIT, and 21.
I (6203) LADY LUCK | 3 - 17 gambling games including DODGE CITY POKER and KENO.
| FI (6098) ON THE BOARDS / 1 - Contains 11 board games. Includes Yahtzee, Battleship & more
| 5 (6119) ON THE BOARDS / 2 - 12 board and card games including battleship and chess.
7) (6120) ON THE BOARDS / 3 - 17 more board and card games including CRIBBAGE and BINGO.
| 7 (6118) PUB/BOARD GAMES - Dans, Bowing, Pool, Checkers, Backgammon, Chess, and mor.
7 (6204) THE FINAL FRONTIER / 1 - 10 action filed space games including METEOR SHOWER,
| 3 (6206) THE FINAL FRONTIER 3 - 18 action filed space games including CANYON RUNNER.
7 (6207) THE FINAL FRONTIER | 4 - 18 action filed space games including SPACE DEFENDER.
7] (6104) THE SPORTING LIFE - Contains Golf, Miniature Golf, Baseball 64, Boxing and Trap.
J (6208) THE SPORTING LIFE | 2 - 19 games relating to sports including BOWLING and BOXING.
7 (6108) VICTORY SOFTWARE | 1 - The first disk of shareware games by Victory Software.
ec
| Please send order, payment, name, address and daytime phone # to:
Pee
| Laradise Sytware
Hours: Mon-Fri, 9am-Spm PST
7657 Winnetka Ave, Ste 328-C, Winnetka CA 91306
Circle Reader Service Number 129
ther monster or man.
You contro! Boone with a
joystick to punch, kick, or
shoot your way past the
many different creatures
that pursue you. Each con-
frontation with a monster will
have different challenges for
you to overcome. For exam-
ple, | found the Fatman fairly
simple to overcome, yet the
Sons of the Free were chal-
lenging, using everything
from rocket launchers to gre-
nades in an attempt to stop
me. Also, you'll find each en-
emy has a unique power
that makes it dangerous.
The Fatman moves slowly,
but he vomits, and the vomit
is poisonous to the touch.
Since this is an arcade-type
Should Boone defeat the grenade tosser, he still must defuse the time
bomb before he can continue his quest to save the Nightbreed.
G-13
REVIEWS
thriller, you can expect other
gross experiences through-
out the game.
In your path you'll encoun-
ter such graveyard charmers
as the Snakeman, the Hop-
per, Flying Teeth, a Head
Monster, and a Roof Crawl-
er. This last fellow delights in
dropping rocks on you.
One unique feature you
will find is the passkey which
allows you to skip certain
parts of the game. The key is
a password-type system
that uses graphics instead of
text. You create a passkey-
from various pieces dis-
played on the game's back-
ground scenes, Using the cor-
rect key allows you to skip to
certain points in the game.
Making a map of the
game is also useful. The
game can be confusing if
you don't know where you've
been or where you need to
go. As with many games of
this type, you can move ina
variety of directions and en-
counter a number of foes as
your hero attempts to com-
plete his quest. A map helps
you avoid many blind alleys.
At first glance | thought
that Nightbreed was going
to be a simple arcade game
and that completing it would
be an easy task. | was
wrong, It provides plenty of
nonstop action that should
have you grasping your joy-
stick for quite a few hours of
nerve-wracking play.
The graphics are very
well done, and the game re-
mains true to the movie's
theme. If you're looking for a
good action-packed game,
then turn down the lights,
grab some popcorn, and
boot up a copy of
Nightbreed!
JEFFERY SCOTT HALL
Commodore 64 or 128—$14.95
OCEAN OF AMERICA
Distributed by Electronic Arts
1820 Gateway Dr.
San Mateo, CA 94404
(415) 571-7171
Circle Reader Service Number 318
POWER DRIFT
For a fast-paced, hard-
edged race through five dif-
ferent road courses, try Pow-
er Drift. Pit your skills in this
arcade-style release from Ac-
tivision against 12 other rac-
ers who are out to win at all
costs. Speed through hairpin
turns at over 200 kph and
plunge over hills into steep
drops, just get to the finish
line first.
At the start of the game,
choose the race terrain you
want and a driver. Terrains in-
clude city, beach, desert,
countryside, and riverside.
There's also a wide selection
of male and female drivers
from which to choose.
As the starting lights turn
from red to green and the
race begins, the other driv-
ers will leap ahead of you.
Push forward on your joy-
stick to accelerate. This will
take you to about 130 kph.
Change from low to high
gear by pressing the firebut-
ton. In high gear your car
reaches its maximum speed
of 224 kph. Pulling back on
the joystick acts as a brake,
but with a little practice you'll
coupon today.
Individual issues of the disk are available for
$9.95 (plus $2.00 shipping and handling) by writing
to COMPUTE, 324 West Wendover Avenue, Suite
200, Greensboro, North Carolina 27408.
“Gazette Gallery,” where each month we present the
very best in original 64 and 128 artwork.
So don’t waste another moment. Subscribe to-
day to COMPUTE’s Gazette Disk and get 12 issues
for only $49.95. You save almost 60% off the single-
issue price. Clip or photocopy and mail completed
G14
Yes, save time and money! Subscribe to the Gazette
Disk and get all the exciting, fun-filled Gazette pro-
grams for your Commodore 64 or 128—already on
disk!
Subscribe today, and month after month you'll
get all the latest, most challenging, and fascinating
programs published in the corresponding issue of
COMPUTE.
New on the Gazette Disk! In addition to the
programs that appear in the magazine, you'll also
get outstanding bonus programs. These programs,
which are often too large to offer as type-ins, are
available only on disk—they appear nowhere else.
As another Gazette Disk extra, check out
COMPUTE
YES! Start my one-year subscription
to COMPUTE’s Gazette Disk right away
for only $49.95.*
O Payment enclosed (check or money order)
OCharge OMasterCard O Visa
Acct. No. Exp. Date
Signature
(Required)
Name
Address
City
State/ ZIP/
Province Postal Code
Mail to COMPUTE's Gazette Disk, P.O. Box 3250, Harlan, IA 51593-2430
"Residents of NC and NY, please add appropriate sales tax for your area. Canadian
orders, add 7% goods and services tax.
be able to maintain top
speed throughout the entire
course. Just watch for other
drivers.
As you progress around
the course, your time,
speed, position, and lap num-
ber are posted at the top of
the screen. To advance to
the next round, you must
place in the top three finish-
ers. Racing in the higher
rounds is more difficult and
there's a greater possibility
of ramming other drivers.
When this happens, the re-
sult is a dramatic spin-out
with you hurtling across the
course. When your car final-
ly comes to a halt back on
the road, try to make up lost
time. Don't overdo it or you'll
end up in another spin-out.
As long as you keep plac-
ing within the top three, you'll
continue advancing to high-
er levels. Finish back in the
pack and the race is over.
One of the best features of
this game is that it restarts
very quickly. You don’t have
to sit and wait for it to reload
every time. At the end of a
game you can try another
course and change drivers if
you want.
Power Drift's graphics are
colorful and interesting, but
if you have any intention of
placing in the top three, you
won't have time to notice
your surroundings or the
scenery as it flies by. One in-
teresting effect is the road; it
seems to be suspended in
air. There are no guard rails
and on hills the road often
drops like a rollercoaster.
Watch out for those blind
drops though. A car could
be just over the crest and if
you bump one at high
speeds, you could go crash-
ing off the road.
There is a steady, pound-
ing pulse to the background
music that keeps you racing
through the turns and hills.
Even when you're adding
your name to the list of high
scorers, the powerful beat
continues. It complements
the action as you move
through the courses.
The player's guide is easy
to understand. It explains
how to load the program and
how to use the joystick. All
you have to know is which di-
rection to push or pull the joy-
stick and how to change
gears. It's all clearly ex-
plained in the manual.
~ In all, Power Drift is not a
game to play for hours on
end, but itis fun. There's plen-
ty of white-knuckle action as
you speed around each
course and drift through the
corners. Tension builds as
you progress. The first few
races are fairly easy and the
courses somewhat forgiving,
but accidents become more
frequent and the amount of
driving skill needed increas-
es as you advance to higher
levels.
So, wait for the green
light, happy racing, and
don't forget to buckle up!
ALISON CHRISTENSON
Commodore 64 and 128—$29.95
ACTIVISION
3885 Bohannon Dr.
Menlo Park, CA 94025
(415) 329-0800 a)
Circle Reader Service Number 319
COMPUTE’s
SpeedScript Disk
A powerful word processing
package for Commodore 64
and 128 owners
A Great Deal for Commodore
° SpeedScript for the 64
YES! Send me
| SpeedScript Disk.
I've enclosed $11.95 plus $2.00 postage and handling. (Outside
U.S. and Canada add $1.00 for surface mail or $3.00 for
| airmail.)
| ORDER NOW!
* SpeedScript 128—80-column version
copies of COMPUTE’s
Amount
Sales Tax"
Total
* Spelling checkers Address
* Mail merge State
Mail personal check or money order to
Commodore SpeedScript Disk
324 W. Wendover Ave., Ste. 200
Greensboro, NC 27408
| Residents of North Carolina and New York, add appropriate tax for your area. Canadian
orders, add 7% good and services tax
* 80-column preview for the 64
|
|
* Date-and-time stamp |
|
|
* Turbo save and load
* Plus more than a dozen other SpeedScript
support utilities all on one disk (including
full documentation) Please allow 4-6 wecks for delivery. Program available only on 5%-inch disks.
Questions and
answers
about converting
programs
from Commodore
G-16
format to
IBM, KoalaPads,
calendars,
BBSs, and more
COMPUTE
FEEDBACK
Three Questions
Is it possible to convert Com-
modore type-in programs to
IBM-compatible format in a rel-
atively easy way for those
with limited knowledge of GW-
BASIC or machine language
programming?
As | am changing over to a
PC, am | right in assuming
that an alternative version of
COMPUTE that is PC specific
and excludes the Gazette sec-
tion will be available?
From my current address la-
bel on my magazine, do | sur-
mise correctly that my sub-
scription is current through
June 1991?
C. W. M. ANDERSON
SANDTON, SOUTH AFRICA
Commodore BASIC and GW-
BASIC are similar in many re-
spects, and some elementary
programs entered in one lan-
guage will run if entered into
the other. Simple print state-
ments, mathematical formu-
las, and commands such as
GOSUB, GOTO, IF-THEN,
and FOR-NEXT pose few prob-
lems when making the
change from one version to
the other. Problems arise, how-
ever, when it comes to colors,
machine language routines,
PEEKs and POKEs, and other
commands that are machine
specific. Some commands in
BASIC 7.0 for the 128, for ex-
ample, would cause a 64 to
crash. There are ways around
many of these problems, but
it usually takes a good work-
ing knowledge of BASIC to
make the conversion work.
If you are subscribing to
COMPUTE’s Gazette edition,
you already are receiving all
the PC-related material that
we publish each month.
There’s no reason to change
your subscription unless you
want to drop the 64/128 cov-
erage; the price is the same.
Some COMPUTE subscrib-
ers, however, do not get the
64/128 material.
The month and year print-
ed on adaress labels indicate
the final edition of your cur-
rent subscription. Since the
June issue was the last one
you were scheduled to re-
ceive, | hope you renewed
your subscription in time to
read this reply.
What's a Koala?
| subscribe to Gazette Disk,
and | enjoy your “Gallery,”
but, forgive me, what is a Ko-
ala? | gather that it is more
than a marsupial. Do you
need light pens or a mouse to
create graphics with it?
One more comment. Could
you explain why your new
GOS (Gazette Operating Sys-
tem) menu on Gazette Disk
will not allow me to directly
load any previous Gazette
Disk programs? It gives the
disk information, but the selec-
tion turns blue and sits there.
JOSEPH RUFFINI
NORANDA, PQ
CANADA
A KoalaPad is a graphics tab-
let that connects by cable to
a 64's joystick port. With its ac-
companying software, you
can create colorful pictures on-
screen by moving your finger
or a stylus across the pad's
surface just as if you were
drawing a picture with pencil
and paper. The pad is no long-
er in production, but used
units can often be found. Its
multicolor format is a popular
one with Commodore artists.
The new Gazette Operat-
ing System is compatible
with pre-GOS disks, so you
should be able to run pro-
grams from them. Load and
run the menu program that
contains GOS; then swap
disks. Now click on the disk
icon. When the disk menu ap-
pears, click on Directory.
GOS will read the current
disk’s directory and print it in
a window. Scroll through the ti-
tles and click on the program
you wish to run. The red
band highlighting your selec-
tion will turn blue. Click again
on the disk icon and select
Run Program when this win-
dow opens. GOS has been
streamlined to make it oper-
ate faster than it did original-
ly, but you should still be able
to access and run other
disks. It also lets you copy
disks and files, delete and re-
name files, obtain disk and pro-
gram information, print files,
and perform numerous other
applications with joystick or
cursor keys.
Wide Open Spaces
| have recently started typing
in a few Gazette programs
with The Automatic Proofread-
er. Since | am not a program-
mer, my understanding of
what | am typing is rather lim-
ited. Because the listings in
your magazine are printed in
columns, it is not always
clear when to leave spaces.
HANS SPARREBOOM.
TOFIELD, AB
CANADA
When entering programs in
Commodore BASIC, spaces
are usually optional. Program-
mers may put spaces be-
tween words, variables, or
commands in their listings to
make them more readable,
but the computer doesn't re-
quire them. Most program-
mers do not include spaces
simply because it saves
space, computer memory,
and typing time. If they leave
them in and a column line be-
gins with a space, our listing
program will usually print the
word SPACE within brackets.
Since most spaces are option-
al, The Automatic Proofreader
ignores them also unless
they fall between quotation
marks. To illustrate, load and
run Proofreader; then enter
the following statement.
100 IF A$ <> “Y” THEN 100
OMNI
TIME CAPSULES
Now the magazine of the future can be
kept for the future. Store your issues of
OMNI in a new Custom Bound Library Case
made of black simulated leather. It’s built to
last, and it will keep 12 issues in mint
condition indefinitely. The spine is embossed
with the gold OMNI logo, and in each case
there is a gold transfer for
recording the date.
Send your check or money order
($8.95 each; 3 for $24.95; 6 for $45.95)
postpaid USA orders only. Foreign
orders add $1.50 additional for
postage and handling per case.
To: OMNI MAGAZINE
Jesse Jones Industries, 499 E. Erle Ave.
Phila., PA 19134
CREDIT CARD HOLDERS (orders over $15)
CALL TOLL FREE 1-800-972-5858
Or mail your order, clearly showing your
account number and signature. Pa. residents’
add 6% sales tax.
SATISFACTION GUARANTEED
In English the line reads, “If A-string
does not equal the letter Y, then go to
line 100.” This line could be used in a state-
ment to halt a program until the letter Y—
and only the letter Y—on the keyboard is
pressed.
Proofreader should print MJ in the up-
per left corner of your screen when you
press Return. Now go back, delete all the
spaces, and press Return again. You
should still get MJ, indicating the line is
still entered correctly. Spaces make
code easier to read, but often they are op-
tional to the 64.
Now go back and insert a space after
the first quotation mark and in front of the
Y and try it. Proofreader will return a dif-
ferent value this time because " Y" is not
the same thing as “Y" and it would affect
how the program runs.
Diary Needed
I'm an active 14-year-old looking for a 64
program that is a diary.
BRIAN S. MULCAHEY
HAMILTON, OH
Almost any word processor could be
used as a diary. You could write as little
or as much as you want and then save
each entry with a filename that repre-
sents the date, such as SEP20. There is
a program called Notepad 64 (Novem-
ber 1988) that could prove useful. This
machine language program resides in
Computer Diagnostics, by Real Software
‘Alter Ego, by Activision (spacity male -or- female)...
Include $4 for shipping charges in U.S
SOFTWARE
CLOSEOUTS
For Commodore 64 & 128
$81 BARGAINS, Your Choice .
Phantasie Il, Wargame Construction, Guestron, 8-24, Questron i
Roadwar 2000, Panzer Strike, Demon's Winter, Eternal Dagger,
1st Over Germany, Heroes of the Lance.
AVALON-HILL DEALS
Darkhorn, Gulf Strike, hip
Dy, Run, Parthian Kings, Jupter Mission, Pane’ Japd, TAC, Tsushima,
Legionnaire, Panzers East, Maxwell Manor, Quest for Space Beagle,
Guderian, Computer Stocks & Bonds, Super Sunday, Ripper.
INFOCOM BARGAINS, Deadline, Starcross, Suspended, Zork 2 or 3... $6 each
ACCOLADE LIQUIDATION, Your Cholee ONLY $5 each!!
Ace of Aces, Fight Night, Jet Boys, bal, Killed Unt
Dead, Law of the West, PSI 5 Trating ‘company
$8G BARGAINS, Your Choiet . $16.50 each
‘American Civil War Volume 1, 2 of 3, Fire King, Halis of Montezuma,
Panzer Battles, MacArthur's War, Rommel Battles for North Africa,
ACTIVISION BARGAINS, Your Choice
Christmas Model Kit, Crossbow, Ocean’
OTHER GREAT DEALS
Super Expander 64 Cartridge ...
Partner 128, by Timeworks (C/128 only)
Alt, by Box Office
Aliens, by Activision
‘Assembler, by Commodore
Printed Word -or- The Tool, by Valueware
Congo Bongo, by Sega (cartridge)
Entertainer -or- Educator, by Valueware
Electronic Address Book, by Batteries Included
GO, by Hayden (4,000-year-old Chinese board game)
Home Manager, by Valueware ...
Masterpiece, by CRL (Drawing & pain rapes system)
Practicalc 64, by Practicorp
Practicale I, by Practicorp en
Spite & Malice -or- Slinky, by Cosmi.
Heswriter 64, by HesWare (cartridge)
Turtle Toyland Jr. -or- Tri-Math, by HesWare
Aitack of tha Mutant Camas, by HesWare(ariridge)
Magic Madness, by Artwor
LEATHER GODDESSES OF Piida08, by infocom
MINDSHADOW, by Activision... =
Tag Team Wrestling, by Datasoft .
$15 each
. $10 each
$14.50 each
ps.
dinctnes 88
WOW!! $5.00
‘wow!! 3) 00
TO ORDER, SEND CHECK OR MONEY ORDER TO:
DRAWER 5160, SAN LUIS OBISPO, CA 93403-5160
$8 for Canada, $10 for Int), CA orders add 6 sales tx
1-800-676-6616
CREDIT CARD ORDERS ONLY, PLEASE!!!! $25 Minimum
To receive our complete catalog of ove 2.000 closeout tems forall computer types
‘end 82 in cau tarps to te above adres. The cats FREE th aye
To check for an tem not sted tere, cal (805) 544-8616
World Geography
for Commodore 64 shat eee I
a8 L
SAI LANKA
a
Bion
ON
26,81
Full-color 3-D rotating globe!
World Geography is the fun way to
learn the world’s countries, flags, capi-
tals, populations, languages and cur-
rencies in an entertaining 1- or 2-player
educational game for the whole family,
“The entire presentation is outstanding...
This is really an achievement!”
—Commodore Magazine
“An awesome achievement... the execution
is flawless.” —COMPUTE1’s Gazette
C64 only $19.95, Apple II $24.95 postpaid!
Also available in Spanish and German
Injured Engine (C64 only) $14.95
An engine diagnostic simulation by IMAGIC
Fish-Ed (C64 or Apple II) $17.95
Elementary spelling and number concepts
Speller’s Duel (C64 only) $12.95
Spelling program in a game show format
Full refund if not completely satisfied!
800 829-5551
Outside US call 408 462-1551
BOBCO Interactive Software
200 7th Ave., Suite 111, Santa Cruz, CA 95062
£008 sone
Circle Reader Service Number 161
a"
Save a lot of time and
EMERGENCY COMMODORE START-UP KITS
Circle Reader Service Number 112
«
e repairing your own Commodore computer. All chs are direct socket plug-
money
ins (no soldering). Each kit includes all you need to “start up’ /revive your broken computer. Onginally
bister-packed” for government PXS worldwide, this series is now available to you. Total cost savings per kit
far exceeds purchasing chips on an individual basis.
Kit #4 Part #DIA16 C-64
Kit #3 Part #DIA15 C-64
‘Syriptoms: No power up » Screen
lockup + Flashing colors * Game car
tridge problems
Contains: IC #PLA/906114, Diagnos:
tiian #6, Fuse, Chip pullar. Scho:
mate, Utity cartridge and Diag, Test
Disk with 9 programs.
An $87.50 value for only $29.95
Sympioms:
iO}
Sound problems + Keyboard prob
lems » Serial device problems
Contains; IC #65264, IC #6581. D..
agnostcian #6, Fuse, Crip puller
Basic schematic. Unity cart, and
Diag. Test Disk with 9 progr
A $79.80 value for only $29.95
Kit #5 Part #DIA17 1541/1571
jymptoms: Drive runs continuously *
‘Motor won't step + Read errors + No
power up
Contains: C #6502. 1C#6522.
901229 Fuse, Chip puller, Basic scho-
matic, Diagnostcian #6 and Diag
Test Disk with 9 programs.
A $70.10 value for only $29.95
ft Problems *
ams,
= ) THE G
We Ship Worldwide.
GRAPEVINE GROUP, INC.
chestnut St., Suffern, NY 10901
1-800-292-7445 or 914-357-2424
Fax: 914-357-6243
Circle Reader Service Number 128
Fight it with a
Memorial gift to
the American
Heart Attack.
Heart Association.
THE AMERICAN HEART
ASSG@LIATION
MEMORIE BOSS
x)
4, EE S ISIS
4,
@P American Heart Association
This space provided as a public service.
f COMMODORE DIAGNOSTICIAN II ‘
Originally developed as a software package, then converted to a readable
format, the Diagnostician has become a fantastic seller. With over 32,000 sold
worldwide, the Diagnostician |! utilizes sophisticated cross-reference grids to
locate faulty components (ICs) on all C64 and C1541 computers (C128/64
mode). Save money and downtime by promptly locating what chip(s) have failed.
No equipment of any kind needed. The Diagnostician II has just been updated
with 30 changes to take advantage of the new 64C combination chips/RAM
changes found on new CBM boards. Success rate from diagnosis-to-repair is
98%. Includes basic schematic.
$6.95
(Available for Amiga computers at $14.95)
w CE)
The Grapevine Group, Inc.
We Ship Worldwide
3 Chestnut Street, Suffern, NY 10901
Hours: 9-5 EST
1-800-292-7445 or 914-357-2424 * Fax: 914-357-6243
Circle Reader Service Number 197
G-18
COMPUTE
FEEDBACK
memory while your computer
is working on another BASIC
program. This means you can
call it up at the touch of a
key, jot down some thoughts,
and then continue with your
BASIC program. You can also
save the notes with any file-
name you like. One limitation
to the program, however, is
that each note can be no
more than 1000 characters in
length. That's enough to fill
one screen. Back issues of
this disk and any other
Gazette Disk prior to October
1990 can be ordered from
our Greensboro, North Caroli-
na, office for $5, plus $2 for
shipping and handling.
Worldwide User Group
| am working to start a world-
wide association of Commo-
dore user groups. As support
for the 64 dwindles, user
groups play a more important
role in supplying users with
help and information. | be-
lieve an association of user
groups would be beneficial, es-
pecially for smaller groups.
| would love to hear from us-
er groups who would like to
help me organize this group
or who would like to join it.
Just drop me a line, and I'll
bring you up-to-date on
what's happening so far.
JOSH JACOBY
98-1689 HAPAKI ST.
AIEA, HI 96701
Keep Gazette posted about
your activities, Josh. User
groups represent a great re-
source of information for Com-
modore users, and we encour-
age their growth. In this issue
we finish our two-part listing
of user groups in the U.S. and
other countries. If you are not
already a member, we recom-
mend you contact a group in
your area or see about joining
one by mail.
Back to the Boards
Rick Lembrée’s article on
BBSs (March 1991) was an ex-
cellent introduction to what
has become one of the last
bastions of dedicated Commo-
dore users. Using a BBS is
the best way possible to sup-
port each other and enjoy the
potential of the still-powerful
64s and 128s.
Volunteering as a sysop is
a rewarding experience, not
only for the knowledge
gained, but for the enjoyment
of knowing that you are pro-
viding others with a medium
for sharing and communicat-
ing. If you want to try your
hand at running a board,
there still are plenty of poten-
tial members out there who
would eagerly join a new
board. | especially urge Com-
modore users to participate
on a local BBS. Any comput-
er user who doesn't is miss-
ing out on an excellent re-
source of knowledge and en-
tertainment that is easily avail-
able to anyone with a mo-
dem. I'm sure many COM-
PUTE readers would be inter-
ested in reading more articles
about operating a BBS, as
well as about the many fea-
tures different boards have to
offer.
FREDERICK T. MERRITT
ST. PAUL, MN
At the end of your BBS article
in the March issue, the suppli-
er of the C-Net system was list-
ed incorrectly. The correct
name is Perspective Soft-
ware. The BBS number for sup-
port of this package is (313)
981-1524. Also, | feel that
this system was not given
enough credit as a commer-
cial BBS available for the 64.
JEFF FENSTERMAKER
NEWBURY, OH
Thanks for bringing the correc-
tion to our attention, Jeff. Be-
cause C-Net was /ast on our
list of commercial systems for
the 64 does not mean it was
considered the least. We sim-
ply tried to list as many of the
current BBS products as we
could find for our readers’ con-
venience, and on any list
someone has to be last. The
listing was not meant to be an
endorsement by either Mr.
Lembrée or Gazette.
Bug-Swatter
Several readers wrote in to
say that they have experi-
enced problems with Cross
Aid (March 1991) when they
try to use Shift-D to delete mis-
spelled or unwanted words.
The documentation was not
clear in stating that you must
first enter maintenance mode
by entering the word that's to
be deleted, followed by Shift-
Return. The delete function
can be invoked by pressing
Control-D to erase the word.
Several readers also informed
us of a problem with Castalia
(May 1991). We discovered it
has a peculiarity that affects
some machines at some
times. The problem causes
the screen to go blank when
you first run the program. If
you experience this situation,
there is no danger or program-
ming fix required; just try run-
ning the game again. On the
128, the problem is especial-
ly easy to fix. If the problem oc-
curs, it only does so when an
attempt is made to run the pro-
gram for the first time after
powering up. If this happens,
reset the computer to 64
mode by holding down the
Commodore key while press-
ing the reset button. You
should have no problem the
next time the program loads.
If you have a question, com-
meni, or problem, we want to
hear from you. Send your let-
ters to Gazette Feedback,
COMPUTE Publications, 324
West Wendover Avenue,
Suite 200, Greensboro, North
Carolina 27408. a
Telecommunicating
with GEOS
requires special
attention. Here
are some tips to
make the
process easier.
GEOS
Steve Vander Ark
GO ONLINE
WITH GEOS
This won't come as a big sur-
prise to many of you. If you
haven't already discovered it,
you've certainly read articles
on the subject or heard com-
puter users expound about it.
Itis telecommunicating, and it
is great.
It's great, but it's also con-
fusing, intimidating, and a
whole lot of other things that
keep many people from plug-
ging in a modem and dialing
up a bulletin board system
(BBS), | avoided telecommuni-
cations for these reasons for a
long time. | was afraid | would
make a fool of myself trying to
learn my way around. |
thought I'd find a hostile world
full of people who were in the
know and wouldn't be too hap-
py dealing with a novice pok-
ing around at 300 baud.
Boy, was | wrong. When a
friend finally convinced me to
hook up his modem on my
128 and | timidly dialed a lo-
cal BBS number, | had no idea
what a giant leap | was taking.
Over the next four months, | dis-
covered a lot of new computer
friends who didn't give a hoot
that | needed to call up a
menu every time or that | ac-
cidentally logged myself off
when | meant to upload a file.
They offered support, advice,
a little good-natured teasing,
and friendship.
Now I'm online all the time.
This electronic alternative re-
ality is populated by a wide va-
riety of users. They call using
IBMs, Macs, Amigas, and, of
course, Commodores.
That's where GEOS comes
in. It wasn't long before | dis-
covered a number of people
on various local BBSs who
shared my enthusiasm for
GEOS, and we began compar-
ing notes. We exchanged ide-
as, gave each other hints for
using various applications,
and swapped utilities down-
loaded from other BBSs.
But _telecommunicating
with GEOS requires some spe-
cial rules. GEOS has its own
unique way of running a Com-
modore computer, and termi-
nal software and bulletin
boards aren't designed to han-
dle the differences. The stum-
bling block is the structure of
GEOS disk files. A file exists
on a disk as a scattering of in-
dividual blocks of data, linked
together with predefined cod-
ing. GEOS uses a different
code from the one built into
the 64’s system, which means
that if you try to use normal
Commodore file commands
on a GEOS file, the system
won't know how to put the var-
ious chunks back together.
That's why you can't copy a
GEOS file using a normal file
copier; the same is true for
uploading or downloading.
In order to send or receive
a GEOS file by modem, it
must be converted temporari-
ly into Commodore DOS-com-
patible format. William Cole-
man has written a conversion
utility called Convert, which
has become something of an
unofficial standard for han-
dling GEOS files online. This
utility should be the first
GEOS file you download, It
can be loaded and run with BA-
SIC and will convert a pro-
gram or sequential file to one
that can be used by GEOS.
Once you have Convert,
you're in business.
Any GEOS file you down-
load using your normal termi-
nal program will be a standard
sequential or program file un-
til you switch into GEOS and
run Convert; the whole proc-
ess takes a matter of a few sec-
onds. Convert can work both
ways. If you have a GEOS file
that you'd like to upload, you
can convert it into a sequen-
tial or program file that your ter-
minal program can handle.
Convertcan be found on Quan-
tumLink and on many local
BBSs. (File Converter is a sim-
ilar program published in COM-
PUTE!'s Gazette, April 1989.)
If you'd rather stay in GEOS
without returning to the Com-
modore DOS, there is one ter-
minal program available
which operates within the
GEOS environment. It in-
cludes the Convert utility as an
option, which makes handling
GEOS files a breeze. This pro-
gram is called geoTerm. It,
too, was written by Coleman,
with versions available for the
64 and the 128. Each version
includes many features, includ-
ing a 9K capture buffer for the
64 and a 30K buffer for the
128, programmable function
keys, built-in utilities to convert
the buffer to and from true AS-
Cll and PET ASCII, as well as
the above-mentioned Convert
program.
The screen can be run in
40, 53, or 80 columns. You
can also access either drive
for uploads or downloads,
scratch files, and so on.
Whether you use geoTerm,
available from RUN magazine,
or another terminal program,
you'll find many GEOS users
out there who are glad to hear
from you. BBS Post, a bulletin
board in Michigan, has a
GEOS file area. The sysop, Bis-
mark, says he gets more calls
for the Commodore area on
his IBM board than for any oth-
er. I've put many of the public
domain utilities mentioned in
this column on BBS Post. If
you call long distance, you
may download GEOS files on
your first call. The number is
(616) 531-1346.
For the price of a long dis-
tance call, it's not a bad place
to start. But there are probably
people on bulletin boards
right in your hometown who
would love to hear from you.
Why not give them a call?
Steve Vander Ark can be
reached on QuantumLink. His
handle is SteveV 14. a
G-19
integers, and
do other clever
things with
the help of binary
G-20
fractions
COMPUTE
MACHINE LANGUAGE
Jim Butterfield
GIVE IT A NUDGE
WITH BINARY
FRACTIONS
BASIC uses a number system
called floating point (or scien-
tific notation), which is power-
ful but complex to code in ma-
chine language. Often, you
can accomplish what you
need through the use of fixed-
point binary fractions.
In conventional base 10
mathematics, if you divide 7
by 3, the answer is 2 with a re-
mainder. But if we continue
the division, we establish that
7 divided by 3 gives
2.33333... .
Exactly the same thing hap-
pens in binary calculations. In
binary, we might write 7/3 as
%111 divided by %11; using
any of several division meth-
ods, we produce a first result
of %10 with a remainder of 1.
But if we don't stop at the “bi-
nary point” equivalent of a dec-
imal point and provide some-
where tostore the extra fraction-
al result, we will generate
%10.01010101 . . . and cut
off the endless fraction.
In hexadecimal notation, '/2
works out neatly as $.80, but
1/3 is the repeating series
bites} ay
You've noted that you must
trim an endless value at some
point. In machine language
coding, that amounts to decid-
ing how many bytes you will
use to hold the fractions.
Roughly speaking, each byte
gives the equivalent of 2.4 deci-
mal digits of accuracy.
Binary fractions fit nicely in-
to the whole scheme of math
coding. Such numbers add,
subtract, multiply, and divide
in the same way as integers.
For example, you might want
to multiply a value by 8 and
then divide by 5 to convert
miles to kilometers.
Perhaps the most popular
use of binary fractions is to
nudge an integer value high-
er. For example, suppose you
started with zero and added a
value of 1/3 repeatedly. The in-
teger part would bump to the
next higher value every three
operations. This kind of nudg-
ing has many applications in
programming.
Aprogrammer might be han-
dling one or more sprites;
each sprite is expected to
move from time to time. How
do we control its speed? Sup-
pose we want it to move grad-
ually, without leaping across
the screen. Let's say we just
want to nudge its position. By
repeatedly adding fractional
values to its location, we will
eventually cause the sprite’s lo-
cation to move to the next pix-
el at regular intervals.
When working in high-reso-
lution graphics, it’s often desir-
able to draw a line that's not
quite horizontal (or vertical).
Binary fractions will help us do
the job.
To create a line that’s al-
most horizontal, you want to
step across the horizontal (x)
coordinates, but how do we
plot the vertical (y) coordi-
nates for each line? Nudge
the y coordinate value. If the
line were 50 pixels wide by 10
pixels high, you'd nudge the y
coordinate by a value of '/s; as
you sweep across the 50 x pix-
els, the y coordinate would trav-
el exactly the 10 pixels that
are needed.
Let's write a small program
that should be good on almost
any Commodore 8-bit comput-
er that will show this kind of cal-
culation. You'll place a value
to be nudged at address
$2100 with a fraction byte at
$2101. You'll place the nudge
value at $2102 and $2103,
then step through and show
the result.
For easy display, you'll start
the value at $31 (decimal 49).
This corresponds to the ASCII
character 1; you can print it to
show how it changes.
2000 LDA #$31
2002 STA $2100
You will add 1/2 ($80) to your
starting value; that allows
easy rounding of the result. A
hi-res graphics line would
look better with this kind of
rounding, for example.
2005 LDA #§$80
2007 STA $2101
Now store your nudge value
in $2102 and $2103. We will
choose a value of 1/3, hex
$00.55
200A LDA #$00
200C STA $2102
200F LDA #$55
2011 STA $2103
Now we have our values in
place. We'll count our loop
through 16 items (the initial val-
ue plus 15 steps).
Since we started at ASCII
49 (1), we should end up five
full values further along, at AS-
Cll 54 (6). We will use X as
our loop counter.
2014 LDX #$00
Following is the loop. Print
first and then add; then test to
see whether the loop should
be repeated.
2016
2019
201C
201D
$2100
$FFD2
$2101
$2103
$2101
$2100
$2102
$2100
#$10
$2016
That's the whole program. To
use this routine while in BA-
SIC, type in SYS 8192 to
watch the character 1 as it's
nudged through its range. 0
Make your
programs so user-
friendly that
even beginners will
have no
trouble entering
valid data.
BEGINNER BASIC
Larry Cotton
MAKE YOUR
DATA ENTRY
CRASHPROOF
The following general-purpose
“crashproof" data entry subrou-
tine can be inserted into any
BASIC: program in which
you're asking an inexperi-
enced user to enter data.
The first decision is wheth-
er to use INPUT or GET. IN-
PUT is easier to program, but
it's vulnerable to errant key-
board presses, such as cursor
up/down, Del, Clr, and so on.
It's also rudely unforgiving of
unexpected input data. GET re-
quires more programming
and is vulnerable to garbage
collection, a rather nasty habit
Commodore computers have.
For a few simple daily en-
tries, however, garbage collec-
tion shouldn't be a problem.
So let's use GET.
First, let's have all keys re-
peat. It's helpful when testing
the program, and it can be
fun. Here's the first line which
does that and clears the
screen:
10 POKE650,128:PRINTCHR$
(147)
Now decide on a cursor. | pre-
fer a nonblinking one. It im-
plies more patience. As for its
appearance, take your pick.
To determine which cursor
shape to use, select a charac-
ter from the front of the key-
board keys. Then in immedi-
ate mode, enter
PRINT ASC(‘‘X”)
This will return the value of
your preferred character.
(See 64 Programmer's Refer-
ence Guide for a complete list-
ing.) | like a thick horizontal
line made by pressing the
Commodore key and P simulta-
neously. This returns a charac-
ter string (CHR$) value of
175. Two keys we want to rec-
ognize are the Return key (sig-
naling completion of an entry)
and the Inst/Del key (for cor-
recting a typing error). These
are defined as constants R$
and D$ respectively. C$ is
the cursor. The CHR$ values
are from Reference Guide.
20 R$=CHR$(13):D$=CHRS(20):
C$=CHRS$(175)
Now we'll write the crash-
proof data-gathering subrou-
tine itself, which yields raw
data in string form which is giv-
en the arbitrary designation of
B$. Strings can contain let-
ters, numbers, punctuation—
the works. The subroutine
can begin anywhere, so let's
use line 100. Then change BS
to X$. Using VAL with X$, you
may extract the whole string
or just the numbers. You can
select a portion of X$ by us-
ing RIGHTS, LEFTS, or MIDS.
End the program for now.
30 GOSUB100:X$=B$:END
The first thing to do with
the input routine is clear out
B$; then reset the line length
to zero. More on that later.
100 B$=" ":L=0
Now print your cursor (de-
fined in line 20). The semico-
lon ensures that anything af-
ter the cursor will be printed
on the same line.
110 PRINTCS$;
Here's where we use the
GET statement.
120 GETA$:IFA$="" "THEN120
The computer goes into a
loop until the user presses a
key. When any key is
pressed, that single character
becomes A$. A$ will be exam-
ined four times. The first time
checks for the Return key:
130 IFA$=R$THENPRINTDS$A$;:
RETURN
If the Return key is
pressed, the cursor moves
back one space, deleting it-
self, and then moves to the
next line. The subroutine
ends with a RETURN state-
ment.
The second check is for
the Del key, which indicates
that the user is backtracking
and erasing previously typed
data.
140 IFAS=D$THENGOSUB210:
GOTO110
At line 210 we start anoth-
er short subroutine that will do
the actual deleting. Then we
want to go back to line 110 to
print the cursor again. This
time we're not ready to jump
out of the subroutine yet;
we're just deleting characters.
The third check is impor-
tant but fairly complicated.
We want to limit the charac-
ters which can be typed.
We'll do that by examining
their CHR$ values. Luckily,
the values we need are in the
range of 32 to 95, inclusive.
According to the ASCII and
CHR$ code chart in Program-
mer's Reference Guide, this
will encompass the space, all
punctuation, all the numbers,
all the letters of the alphabet
(capitals only), and a few odd-
ball symbols, such as the Brit-
ish pound sign, brackets, and
the left- and up-arrow keys.
You can restrict that further if
you wish. Here's the check:
150 IFA$<CHR$(32)ORA$>CHR$
(95)ORA$=HR$(34)THEN120
Next month I'll repeat this
line with a detailed explana-
tion of it. Meanwhile, try to fig-
ure out why we don't want
CHR$(34) and what we'll do
next to make your programs
virtually crashproof in the
hands of computer novices. 0
G-21
G-22
Here’s a whole
page of nifty
tips for the 64
submitted
by one reader.
COMPUTE
PROGRAMMER’S PAGE
Randy Thompson
GEZA’S PAGE
Every so often someone
sends me a tip that really
sparks my interest, and | may
center an entire column
around such a tip. Just last
week | got a letter from Geza
Lucz of La Jolla, California,
that contained 16 great tips.
Unfortunately, we don’t have
room for all of them, but here
are 4 of the best.
Although the byline at the
top of this column is mine, the
credit and the “Programmer's
Page” award money go to
Geza. Thanks for the code!
OCEAN
This program makes the 64's
characters roll like the waves
in the ocean. There are
sound effects, too.
JX 168 FOR 1=49152 TO 49
258:READ D:C=C+D:
POKE I,D:NEXT
IF C<>16497 THEN
{SPACE}PRINT "ERR
OR IN DATA STATEM
ENTS": STOP
SYS 49152
POKE 54278,240:PO
KE 54276,129:POKE
54273,34:POKE 54
272,75
FOR I=1 TO 15:POK
E 54296,1:FOR J=1
TO 5@:NEXT:NEXT
FOR I=15 TO 1 STE
P -1:POKE 54296,I
:FOR J=l1 TO 200:N
EXT:NEXT
FOR I=l1 TO 686+IN
T (RND (1) *166G) :NE
xT
GOTO 136
DATA 120,169,35,1
62,192,141,28,3,1
42,21,3,169,1,141
,18,268,133,251,1
33,254
DATA 173,17,2068,4
1,127,141,17,208,
169,129,141,26,20
8,88,96,173,25,28
8,141
DATA 25,268,48,7,
173,13,220,88,76,
49,234,166,251,23
2,232,232,232,232
7232
DATA 232,232,142,
18,208,134,251,22
8,254,268,4,238,2
KX 116
cP 126
DA 136
GK 146
MP 156
SR 166
KR 170
XB 186
XH 196
JB 288
EH 216
51,230,254,166,25
3,232
DATA 138,41,15,17
6,134,253,189,91,
192,141,22, 208,76
,188,254,200,201,
262,263
DATA 264,265,206,
207,207,206,205,2
64,263, 202,201,208
g
FREEZE!
This short machine language
routine freezes program execu-
tion whenever you hold down
the 64's Shift key. You can
load and run almost any
program and use Shift as a
Pause key. If you need to
pause a program so you can
go off and answer the phone,
the Shift Lock key keeps the
software frozen until you're
ready for it. This freeze fea-
ture is also great for program-
mers who need to pause the
computer when listing their
programs to the screen.
D 226
BS 236
EX 100 FOR I=49152 TO 49
191:READ D:POKE I
,D:NEXT:SYS 49152
DATA 126,169,26,1
62,192,141,20,3
DATA 142,21,3,88,
96,126,169,234,16
2
HF 116
KG 126
EF 138 DATA 49,141,21,3,
142,26,3,88,96,32
DATA 135,234,174,
141,2,224,1,246,2
46
DATA 76,49,234,6
SR 146
HP 156
COMMAND HIGHLIGHT
Another practical utility is this
program that highlights all of
the commands in a BASIC list-
ing. Line numbers and varia-
bles appear in the usual blue
color, while BASIC com-
mands appear in white.
cC 166 FOR 1=49152 TO 49
236:READ D:C=C+D:
POKE I,D:NEXT
IF C<>11843 THEN
{SPACE}PRINT "ERR
OR IN DATA STATEM
ENTS":STOP
SYS 49152
DATA 169,11,162,1
92,141,6,3,142,7,
3
CH 116
cP 126
MG 136
EB 14 DATA 96,16,36,36,
15,48,32,201,255,
24
DATA 28,133,251,1
34,252,132,254,16
6,253,224
DATA 5,240,7,169,
5,133,253,32,210,
255
DATA 165,251,166,
252,164,254,76,36
7167,133
DATA 251,134,252,
132,254,166,253,2
24,154,246
DATA 7,169,154,13
3,253,32,210,255,
165,251
DATA 166,252,164,
254,76,243,166,208
8,14
GP 156
QB 160
DG 176
PQ 186
DI 196
PP 206
GETTING DIZZY?
A close relative of the ocean
trick, this program is definitely
not recommended for the 64
owner with a weak stomach.
RS 100 FOR I=49152 TO 49
266:READ D:C=C+D:
POKE I,D:NEXT
IF C<>13471 THEN
{SPACE}PRINT "ERR
OR IN DATA STATEM
ENTS":STOP
POKE 16383,0:SYS
{SPACE}49152
DATA 126,169,31,1
62,192,141,26,3,1
42,21
DATA 3,169,0,141,
18,208,173,17,208
741
DATA 127,141,17,2
68,169,129,141,26
7208,88
DATA 96,173,25,26
8,141,25,268,48,7
1173
DATA 13,226,88,76
149,234,236,254,1
65,254
DATA 41,3,208,21,
166,251,232,138,4
5)
DATA 133,251,176,
189,78,192,141,17
7208,189,94,192
DATA 141,22,208,7
6,188,254,24,25
DATA 26,27,28,29,
36,31,31,39,29,28
DATA 27,26,25,24,
263,204,205,206,2
07,206
DATA 265,204,203,
262,201,200,206,2
G1,202,203,6,0,8,
Gg. q
EG 1198
HK 128
RJ 13@
BE 146
Kx 156
AE 166
Gs 176
QP 186
KR 196
JC 206
AE 216
FG 220
GG 239
Best-Selling
Commodore Books
from COMPUTE
Machine Language Routines for the
Commodore 128 and 64
By Todd D. Heimark and Patrick G. Parrish
For both beginners and advanced ML programmers.
585 pages. $18.95
Mapping the Commodore 64 and 64C
By Sheldon Leemon
Comprehensive memory map and programmer's guide.
324 pages. $18.95
Music System for the Commodore 128 and 64
The Enhanced Sidplayer
By Craig Chamberlain
Includes programs, utilities, and sample music.
Book/Disk Only. 274 pages. $24.95
Order your copies today.
Send the appropriate amount plus $2 shipping and handling for
each book ($4 Canadian, $6 foreign) and applicable sales tax* to:
COMPUTE Books
C/O CCC
2500 McClellan Ave.
Pennsauken, NJ 08109
“Residents of NC, NY, and NJ add appropriate sales tax for your area,
Canadian Orders add 7% goods and services tax.
All orders must be paid in U.S. funds drawn on a U.S. bank. Please allow 4-6
weeks for delivery. JUL91CP
Big Blue Reader 128/64
Read & Write IBM PC Disks!
Big Blue Reader 128/64 is a fast, easy-to-use, menu driven program
for novice and expert alike. Transfers word processing, text, ASCII, and
binary files between Commodore 64/128 and IBM PC compatible 360K
5.25" and 720K 3.5" disks, Includes both C64 & C128 programs.
Requires 1571 or 1581 Disk Drive. Does not work using 1541.
BBR 128 Version 3.1 upgrade, $18+ original BBR disk.
Big Blue Reader 128/64 only $44.95
Bible Search 3.1
The only Bible Study Program with:
1) Entire Old and New Testament on (4) 1541/71 or (2) 1581 disks.
2) An Exhaustive English Concordance on (2) 1541/71 or (1) 1581
disks; includes more than 700,000+ references.
3) Incredible five (5) second look-up time, per/word, per/disk.
4) Instant, automatic spell checking of more than 12,800 words.
5) Boolean Search operators including AND, OR & NOT logic.
6) Search entire Bible in 5 seconds with 1581 or Hard Drive (v3.5).
7) A Money Back Guarantee!
Includes: Easy-to-use, C64 and C128 (40/80 column) programs,
printer and disk output, users guide, disk case, and more.
ex Available on (7) 1541/71, or (4) 1581 disks. (Demo disk $5)
KJV $49.95 vxvrvevexe NIV $59.95
tx Any questions? Call or write for more information.
tx NOW Available! AMIGA Bible Search
Order by check, money order, or COD. US Funds only.
ex FREE shipping in North America. No Credit Card orders.
Foreign orders add $5 S/H ($12 whole Bible)
SOGWAP Software @ (219)724-3900
115 Bellmont Road; Decatur, Indiana 46733
1990 Gazette Index
programming, bug-swatter,
feedback, and columns!
A superb interface includes pull-down menus, help
screens, and keyboard, joystick, or mouse control. Fea-
tures include super-fast searching and sorting capa-
bilities. An options screen allows you to choose text
colors, drive number, and input device. And there’s full
documentation on disk.
Choose from three modes of operation—browse for quick
scanning, view for detailed information and descriptions,
and edit for adding items from upcoming issues—and
print to any printer. There’s even a turboload option for
maximum disk-access speed.
Everything’s included!
Features, games, reviews,
education/home applications,
ORDER YOUR
1990 GAZETTE
INDEX TODAY!
(MasterCard and Visa accepted
on orders with subtotal over $20.)
r
! CLYES! Please send me __ 5%-inch
disk(s) ($7.95 each).
Subtotal
Sales Tax (Residents of NC and NY please add
appropriate sales tax for your area. Canadian or-
ders, add 7% goods and services tax. )
Shipping and Handling ($2.00 U.S. and Canada,
$3.00 surface mail, $5.00 airmail per disk.)
Total Enclosed
— Check or Money Order -— MasterCard _ VISA
Credit Card No, —____ Exp. Date
Signature
(Required)
Daytime Telephone No
Name
Address
City
State ZIP
Province Postal Code
Send your order to 1990 Gazette Index, 324 W.
Wendover Ave., Ste. 200, Greensboro, NC 27408.
The robot
revolution may
have started
in a way totally
different from
what we imagined.
G-24
COMPUTE
D'IVERSIONS
Fred D'Ignazio
ROBOTS
IN DISGUISE
| was on my way to Dubuque,
lowa, last week to train a
group of intrepid teachers in
the art of scavenged multime-
dia. As | left the airplane for a
layover in Chicago's O'Hare Air-
port, | felt the urge to make a
brief stop at the nearest men's
room. After | conducted my
business, | made my custom-
ary stop at a washroom sink.
The sink was broken. No han-
dles on the water faucet. No
water. | turned to another
sink. Its handles were also miss-
ing. | turned to another sink.
All the handles were missing.
Suddenly | heard the
sound of running water. |
turned around. Two men were
standing in front of two sinks.
Two water faucets were gush-
ing gurgling water into two
sink bowls. The sinks weren't
broken after all!
| slipped back into the bath-
room, quietly placed my bags
onto the bathroom floor, and
tried to appear natural and in-
conspicuous until the two men
at the sinks had departed.
OK, | thought, how did they
make the sinks work? My first
guess was foot pedals. After
all, there were no faucet han-
dles, and | hadn't noticed ei-
ther man touching anything on
the sink. It had to be pedals.
| crouched in front of one of
the sinks. No pedal. Maybe
the pedal was tucked under-
neath the sink bowl. | reached
under the bowl, searching for
the mysterious device.
Suddenly a man walked in-
to the room. He immediately
halted when he saw me under
the sink. I'm sure he was won-
dering what a small, bearded
man in a raincoat was doing in
an airport bathroom crawling
around under a sink.
“Sink inspector,” | said, smil-
ing and trying to appear non-
chalant. “We have to do this pe-
riodically.” | kind of mumbled
the last part because the fel-
low took a brief, critical look at
this "sink inspector,” smirked,
and shot out of the bathroom.
| stood up, still trying to fig-
ure out how to work the sink's
faucets. Maybe if | stuck my
foot under the sink it would
work. | lifted my leg, leaned
way back, and thrust the toe
of my shoe across the sink's
porcelain underbelly.
Three teenagers entered
the bathroom, jostling each oth-
er and laughing. However, af-
ter they saw me stroking the
sink with my foot, they sank in-
to immediate, puzzled silence.
“It itches," | said, pointing
at my foot. “This is the only
way to scratch it.” | kept prob-
ing the fixtures beneath the
sink with my toes, desperately
hoping I'd soon see water flow-
ing into the basin.
The teenagers did their busi-
ness and approached a cou-
ple of sinks. Water instantly
sprang from their sinks’ fau-
cets into the bowls.
| rushed over to the teen-
agers’ sinks. “It’s a miracle,”
| exclaimed. | dropped to my
knees and looked under-
neath. “How'd you do that?”
“Little sensor right here,
dude,” said one of the teen-
agers, pointing at a small red
oval on the wall that had es-
caped my acute observation-
al powers. “It's easy. You
stand in front of the sink; you
get water. You move away;
the water stops." The teen-
ager stared at me and
grinned. “You from some oth-
er country, maybe?”
When | was growing up in
the 1950s and 1960s, comput-
ers were big, new, and fright-
ening. In those days we were
afraid that computers would
one day be turned into spy ma-
chines. They would spy on us
average citizens and report to
“the people in power.” Much
of this image came from the
book 1984 by George Orwell.
The future turned out to be
completely different. Comput-
ers shrank from barn-sized be-
hemoths into cornflake-sized
chips. As they shrank, they dis-
appeared—into washing ma-
chines, microwaves, automo-
biles, watches, toaster ovens,
and bathroom scales.
Instead of a single big broth-
er running a single big comput-
er, we now have zillions and zil-
lions of little computers acting
as little brothers. Little comput-
ers are now quietly watching
us from inside refrigerators, tell-
er machines, filling stations,
vending machines, and bath-
room sinks. They help us go
about our business and then
patiently wait for the next hu-
man being to come their way.
For years we've been wait-
ing for the robot revolution.
We've pictured it as an elec-
tromechanical second coming
with robots who look like hu-
mans, rolling off factory lines
to rescue human beings from
the grind and toil of daily life.
Maybe the robot revolution
has already started. Except
it's totally different from what
we imagined. Instead of giv-
ing robots a human shape, we
are quietly giving them the
shape of the comfortable, fa-
miliar appliances. Remember
General Electric's motto: We
bring good things to life.
Maybe the being | met in
that O'Hare bathroom was al-
most alive, a primitive precur-
sor on anew evolutionary lad-
der. Maybe it was a little like
Australopithecus or Neander-
thal man, a robot from the
dawn of a new generation of
intelligent robots. These ro-
bots won't have to have legs,
arms, or hands. They won't
have to resemble humans.
That would be too scary!
Instead they'll just keep
evolving at a faster rate, while
retaining the outward appear-
ance of our familiar, cozy, old
appliances. Except they won't
have any handles! Oo
PROGRAMS
SPANISH VOCABULARY
QUIZ
By Christopher M. Stoy
Learning a foreign language can be dif-
ficult. Not only do you need to learn a
new set of grammar rules, but you must
also learn an entirely new vocabulary.
The only way to do this is by continually
repeating the new words until they be-
come second nature.
Finding someone to quiz you on
your new vocabulary can be equally dif-
ficult. After all, who wants to sit around
asking you drill questions all day?
That's the beauty of a computer. Your
64 is happy to help out, with software
such as Spanish Vocabulary Quiz. This
Spanish tutorial will quickly help you
learn Spanish words, and it'll never com-
plain about your poor pronunciation or
your gringo accent.
Getting Started
Spanish Vocabulary Quiz is written in
BASIC with a small machine language
subroutine. To help avoid typing errors,
use The Automatic Proofreader when
entering the BASIC portion; see “Typ-
ing Aids" elsewhere in this section.
When you've finished typing, be sure
to save a copy of the program.
Enter the machine language routine
with MLX, our machine language entry
program; see “Typing Aids" again.
When MLX prompts, respond with the
following values.
Starting address: COO0
Ending address: COBF
Save the machine language routine
with the name SPAN.ML before you ex-
it MLX. Now format a blank disk and
place Spanish Vocabulary Quiz on it.
Use this disk to store the word files you
create.
Options
The options menu contains five choic-
es: 1. English Words 2. Palabras de Es-
pafol 3, Load a Word File 4. File Op-
tions 5. Quit
The first two options quiz you on Eng-
lish or Spanish words, respectively. If
there is no word file in memory, you'll
automatically be taken to option 3.
To load a file, enter its name at the
prompt and press Return. To see a list
of files on the disk, type a dollar sign
($) and press Return, When a file has
been loaded, you'll be given a set of
simple instructions. Press Return to be-
gin the quiz.
You'll be given a word in English (or
Spanish) and asked to translate it.
Type your answer at the prompt and
press Return. If you make a mistake,
use the Inst/Del key to delete a charac-
ter or press Shift-Clr/Home to erase
the whole word and start over. To en-
ter accented letters such as 4, 6, /, 6,
or u, hold down the Commodore key
and type the letter. Likewise, to get the
tilde (fi) character, hold down the Com-
modore key and press N. To write an
upside-down exclamation point (j),
press the Back Arrow key. Make an up-
side-down question mark (2) by press-
ing the slash (/) character.
You're given three chances to
guess the word. After three incorrect
guesses, the program provides the an-
swer. If you wish to see the answer be-
fore making three guesses, type a ques-
tion mark at the prompt and press Re-
turn. To exit the quiz before all the
words are asked, enter an asterisk at
the prompt and press Return,
Scoring
After the quiz you'll be given the num-
ber of words you identified correctly
and your percentage of correct an-
swers. Your score depends not only on
how many words you answered correct-
ly but also on how many guesses it
took you. Every incorrect answer will de-
crease your score. For example, in or-
der to obtain a perfect score of 100 per-
cent, you must answer every question
correctly on the first try. A good way to
study is by going through the same
list repeatedly until you can score 100
percent.
File Options
The menu of file options offers several
choices.
. Create a Word File
. Append to a Word File
. Edit a Word File
. Return to Main Menu
PON
Create a file when starting a new word
list. First, enter the name of the file.
Next, enter the English word and then
the Spanish form. You'll then have a
chance to make any corrections, enter
more words, or stop.
Select Append to add words to the
current list in memory. It’s a good idea
to limit your list to 20 words or less.
Edit a Word File lets you make cor-
rections to the current word file. The
first word in the list will be displayed in
English and Spanish. Press E to edit
the word. When editing, move the flash-
ing cursor over the English word,
make your changes, and then press Re-
turn. Do the same for the Spanish
word. To move on to the next word,
press C to continue. The program will
display the next word in the list. When
you've finished editing, press Q to quit
to the options menu and save any
changes you've made.
Spanish Vocabulary Quiz
XE @ REM COPYRIGHT 1991 - COMP
UTE PUBLICATIONS INTL LTD
- ALL RIGHTS RESERVED
RH 10 REM SPANISH VOCABULARY Q
UIZ V1.2
RC 26 REM{8 SPACES}BY CHRIS ST
oy
SF 30 :
EP 40 GOTO 2260:REM SETUP
SC 100 T=6:PRINT" {HOME} {BLK}"A
NS"{5 DOWN}":POKE 49153
152POKE49157,5
RX 105 PRINT"{6}"AWS; SPC (20-LE
N(AWS))"{WHT}>";:LN=17:
GOSUB 200
GB 116 ON —(WDS="?")-2* (WDS="*
") GOTO 145,700
MQ 115 sys 49152
KH 116 LC=LEN(ANS):IF LEN(WDS
>LEN(ANS) THEN LC=LEN (W
DS)
KH 117 PC=INT (PEEK (49212) *100/
LC) -INT (PEEK (49213) /2)
DP 120 IF PC>7@6 THEN PRINT"
{DOWN} {WHT}<MUY BIEN! C
ORRECT !":SC=SC+ABS (T-3
:C=C+1:GOTO145
PB 125 T=T+1:IF T=3 THEN 145
DM 126 IF T=1 THEN POKE 49157,
245
XH 127 IF T=2 THEN POKE 49153,
6:POKE 49157,229
JX 130 IF PC>36 THEN PRINT"
{DOWN}{1} ALMOST. TRY A
GAIN. {DOWN}":GoTO 140
PE 135 PRINT" {DOWN}{2} SORRY,
{SPACE}WRONG. TRY AGAIN
. {DOWN}" z
XP 140 GOSUB 416:GOTO105
BX 145 W=W+1:RN$(I)=1:PRINT"
G-25
PROGRAMS
HD
JM
GG
XH
XF
CF
SF
HD
PG
QXx
G-26
156
266
265
206
2168
215
217
226
225
236
235
246
245
306
315
320
325
336
335
346
345
466
465
416
586
505
519
{6}{DOWN}THE ANSWER IS
{SPACE} {WHT}"ANS"{6}.":
GOSUB 1600:IF W=X THEN
{SPACE}760
FL=1:GOTO 468
WDS="":POKE 198,@:PRINT
nem;
GET KES:IF KES$="" THEN
{SPACE}265
POKE54296,15:POKE54296,
8
IF KES$=CHR$(13) THEN PR
INT: RETURN
IF KE$=CHR$(17) OR KE$=
CHRS(19) OR KES=CHR$(14
5) THEN 205
IF KE$=CHR$(147) THEN F
OR 22=0 TO LEN(WDS) :PRI
NTCHR$ (26) ;:NEXT:GOTO 2
86
IF KES<>CHR$(26) THEN 2
35
IF LEN(WD$)=@ THEN 205
WDS=LEFTS$ (WD$, LEN (WD$) —
1):PRINT"{2 LEFT}<
{LEFT}";:GOTO 265
IF LEN(WD$)>LN THEN 205
WDS$=WDS+KES: PRINT"
{LEFT}"KES"<";
GOTO 205
IF X<l THEN 1306
PRINT" {CLR} {WHT} {DOWN}"
TAB(11) "QUIZ "QTS" WORD
3"
PRINTTAB(11) "{1}{18 T}"
PRINT" {2 DOWN} {6}
{2 SPACES}I WILL GIVE Y
OU A WORD IN {WHT}"QTS"
{6},"
PRINT" {DOWN} THEN I WIL
L ASK YOU TO ENTER THE
{SPACE}WORD": PRINT"
{DOWN} IN {WHT}"OTS"{6}
"
PRINT" {2 DOWN} (WHT }EXAM
PLE: ":PRINT" {DOWN} "QTS;
SPC(13);O0TS
PRINT"{3}{7 T}"SPC(13)"
£7 T}":PRINT"{6}"EQS: PR
INT" {UP} "TAB (26) ;EO$:GO
SUB 10666
FOR Z=1 TO X:RN%(Z)=G:N
EXT:W=@:SC=0:C=@
I=INT (X*RND(G))+1:1F RN
$(I)=1 THEN4GG
PRINT" {CLR} {DOWN} {YEL}T
YPE YOUR ANSWER, THEN H
IT [{WHT}RETURN{YEL}].
{2 DOWN}"
PRINT" {WHT }
“QTS;SPC (13)
33£7 T}"SPC
"£7 T}":RETURN
"ENGLISH" :OT$="SPAN
="LA PALABRA"
GOSUB 300:IF X=@ THEN 2
196
AWS=ENS (1) :ANS=SP$(I):G
COMPUTE
OSUB 100:IF FL THEN 510
BB 513 IF F=l THEN 560
PC 515 GOTO 2108
HK 6006 OTS$="ENGLISH":QTS="SPAN
ISH":EOS="THE WORD":EQS
="LA PALABRA"
SQ 665 GOSUB 30@:IF X=@ THEN 2
106
CX 616 ANS=ENS$(I) :AWS=SP$(I):G
OSUB 106:IF FL THEN 610
XK 613 IF F=l THEN 600
SJ 615 GOTO 2166
DX 768 FL=G:IF W=@ THEN F=@:RE
TURN
GR 763 PRINT" {CLR}{11 DOWN
{WHT } "TAB (12) "CONGAT)ULA
TIONS!1"
JM 705 PRINT TAB(9)"{DOWN} {6}¥
OU COMPLETED THE LIST."
GR 716 FOR Z=1T0192:POKE53280,
Z:NEX' 1T08: PRINT"
{DOWN}": NEXT: PRINT"
{HOME}{9 DOWN}"
GJ 715 PRINT"{3 SPACES} {YEL}YO
UR SCORE: {WHT} ";INT(SC
/(3*W) #166) 5 "3"
PP 724 PRINT"{DOWN}{3 SPACES}
we {YEL}YOU GOT {WHT}"C"
{YEL}CORRECT OUT OF
{WHT} "W"{YEL}(LEFT}."
KQ 736 PRINT"{2 DOWN}
{4 SPACES}{6}WOULD YOU
{SPACE}LIKE TO TRY THIS
LIST"
RK 748 PRINT" {DOWN}{4 SPACES}A
GAIN ({WHT}Y{6} OR
{WHT IN{6}) ?{WHT} ";
CS 756 GET KES:IF KES="" THEN
{SPACE}756
JA 755 IF KES="Y" THEN PRINT"Y
":F=1:RETURN oz
KK 766 IF KES<>"N" THEN 759
HM 765 PRINT"N":F=@:RETURN
RE 1660 PRINTTAB(7)"{2 DOWN}
{YEL}PRESS [{WHT}RETUR
N{YEL}] TO CONTINUE."?
POKE 198,0
FM 1005 GET KES$:IF KE$<>CHRS$(1
3) THEN 1665
DS 1019 RETURN
XP 1160 POKE 53272,21:POKE 532
86,14:POKE 53281,6:PRI
NT"{7}{CLR}":END
AJ 1266 INPUT#15,ER,ER$,DT,DS:
FL=6
JC 1205 IF ER=62 THEN PRINT"
{CLR} {RED}{9 DOWN}"TAB
(13) "FILE NOT FOUND.":
FL=1:RETURN
FB 1216 IF ER>19 THEN PRINT"
{RED}{2 DOWN}DISK ERRO
R #"ER;ER$S"{8 DOWN) ":F
L=1
BQ 1215 RETURN
RP 1368 PRINT"{CLR} {WHT} {DOWN}
"TAB(12)"LOAD A WORD F
ILE"
XJ 1315 PRINTTAB(12)"{3}{16 T}
BB
MQ
Gx
AB
cD
BK
GJ
ss
XA
RE
QE
Ix
FB
1326
1325
1336
1335
1346
1345
1356
1366
1365
1396
1496
1416
1660
1695
1616
1615
1626
1636
1635
1649
1698
1766
1765
1767
1719
PRINT"{2 DOWN} {6}
{4 SPACES}ENTER NAME O
F FILE AT THE PROMPT."
PRINT" {DOWN} {3 SPACES}
TYPE [{WHT}${6}] TO VI
EW DIRECTORY."
PRINT" {DOWN} {3 SPACES}
PRESS [{WHT}RETURN{6}]
ALONE TO RETURN TO"
PRINT" {DOWN} {3 SPACES}
{WHT}OPTIONS {6}MENU."
PRINT: PRINT" {2 DOWN}
{7}NAME OF FILE: {WHT}>
";:LN=15:GOSUB 206
IF WD$="" THEN 2100
IF WDS="$" THEN 14190
FL$=WD$:0PEN15,8,15:0P
EN2,;8,2,"0:"+FLS+",S,R
"
GOSUB 1260:IF FL=1 THE
N CLOSE2:CLOSE15:GOSUB
1686:GOTO 2190
INPUT#2,X:FOR S=1 TO X
: INPUT#2,ENS$(S) ,SP$(S)
:NEXT
CLOSE2:CLOSE15:GOTO 21
96
PRINT"{CLR}{6}PRESS [
{WHT }SHIFT{6}] TO PAUS
E.":SYS 49250:PRINT:GO
SUB 1696:GOTO 1369
PRINT" {CLR} {WHT} {DOWN}
"TAB(11)"WORD FILE OPT
IONS": PRINTTAB (11) "{3}
{17 T}"
PRINTTAB (16) "{DOWN} {6}
OPTIONS": PRINTTAB (16)"
2347 TP"
PRINTTAB (8) "{DOWN}
{WHT}1. CREATE A FILE"
: PRINTTAB (8) "{DOWN}2.
{SPACE}APPEND TO A FIL
5"
PRINTTAB (8)"{DOWN}3. E
DIT A FILE"
PRINTTAB(8)"{DOWN}4. R
ETURN TO {WHT}MAIN MEN
u{2 DOowN}"
PRINT"{6}{6 SPACES}ENT
ER YOUR CHOICE{WHT}:
{4 SPACES}{3 LEFT}";
GET KES:IF KES<"1" OR
{SPACE}KES$>"5" THEN 16
35
PRINT KES:ON VAL (KES)
{SPACE}GOTO 1760,1706,
1860,2100
REM CREATE/APPEND A FI
LE
KE=VAL(KE$):IF KE=2 AN
D X=@ THEN 1366
PRINT" {CLR} {WHT} {DOWN}
"TAB(12)"MAKE A WORD F
ILE": PRINTTAB (12) "{3}
{16 T}"
IF KE=2 THEN 1726
PRINT" {DOWN} {4 SPACES}
ES
HX
KX
JQ
RE
RK
KQ
BF
KP
GP
1715
1726
1725
1736
1735
1746
1745
1758
1755
1766
1763
1765
1776
1775
1786
1785
1796
1791
1792
1793
1794
1866
1819
{6}NAME OF FILE{WHT}:"
}2LN=15:GOSUB 200:IF W
DS="" THEN 2199
FLS$=WDS$+LEFTS$ (NL$,16-L
EN (WD$) ) :F=F+1:FS$ (F) =F
L$:X=6:KE=2:GOTO 1705
X=X+1: PRINT" {HOME}
{4 DOWN}"TAB (16) "{YEL}
FILE: {WHT}";FL$
PRINTTAB (7) "{DOWN}
{YEL}NUMBER OF WORDS S
O FAR{WHT}:";X-1
PRINT"{6}{2 DOWN}
{4 SPACES}FIRST, ENTER
THE {WHT}ENGLISH{6} W’
ORD AT"
PRINT"{3 SPACES}THE PR
OMPT, THEN ENTER THE
{WHT} SPANISH."
PRINT" {DOWN}{8} ENGLIS
H WORD: {WHT}";:LN=17:
GOSUB 200:ENS(X)=WD$:I
F WOS="" THEN 1763
PRINT"{2 DOWN}{8} SPAN
ISH WORD: {WHT}";:LN=1
7:GOSUB 260:SP$(X)=WD$
:IF WDS="" THEN 1763
PRINT"{2 DOWN} {YEL} IS
THIS CORRECT ({WHT}Y
{YEL} OR {WHT}N{YEL})
{WHT} ";
GET KE$:
N PRINT"N
{?
F KES="N" THE
GOTO 1705
THEN 1755
THEN PRINT"
{BLK}":X=X-1
PRINT"Y": PRINT" {RIGHT }
{YEL}{DOWN}ENTER ANOTH
ER WORD ({WHT}Y{YEL} 0
R {WHT}N{YEL})?{WHT} "
7
GET KES$:IF KES="Y" THE
N PRINT"Y":GOTO 1765
IF KE$<>"N" THEN 1776
PRINT"N":OPEN15,8,15:1
F KE=2 THEN PRINT#15,"
SG:"+FL$:GOSUB 1266
IF FL THEN CLOSE 15:GO
SUB 1666:GOTO 2160
OPEN2,8,2,"6:"+FLS+",S
;W":GOSUB 1260:IF FLT
HEN CLOSE 2:GOTO 1785
PRINT#2,X:FOR S=l TO X
: PRINT#2,ENS(S) : PRINT#
2,SP$(S):NEXT:GOSUB 12
CI)
IF FL THEN CLOSE 2:GOT
oO 1785
PRINT" {CLR} {63{9 DOWN}
"TAB(14) "FILE SAVED.
{2 DOWN}"
CLOSE2:CLOSE15:GOSUB1O
88:GOTO 2190
IF X=@ THEN GOSUB 300:
GOTO 2108
S=1:FL=1: PRINT" {CLR}
{WHT } {DOWN} "TAB (15) "ED
IT A FILE" =
Qs
MS
GD
MK
QH
ER
RF
BP
1815
1826
1825
1836
1835
1849
1845
1856
1855
1866
1865
1876
1875
1886
1885
1896
1891
1892
1893
2166
2195
2116
2115
2126
2125
PRINTTAB(15)"¢3}{11 T}
PRINT" {DOWN} {YEL} FILE
: {WHT}";FLS$;SPC(17-LE
N(FL$))"{YEL}# OF WORD
S: {WHT }";X
PRINT" {DOWN} {33440 Y}"
PRINT" {HOME}{8 DOWN}
{6} ON WORD: {WHT}
{4 SPACES}{4 LEFT}";s
PRINT"{2 DOWN} {8}
{2 SPACES}ENGLISH WORD
: {WHT}";ENS$(S) ;LEFTS (
SC$,22-LEN(ENS$(S))):PR
INT
PRINT" {8}{2 SPACES}SPA
NISH WORD: {WHT}";SP$(
S) ; LEFTS (SC$,22-LEN (SP
$(S))) PRINT
PRINT"{2 DOWN} {YEL}[
{WHT}E{YEL}] TO {WHT}E
DIT{YEL} WORDS"
PRINT" {DOWN} [{WHT}C
{YEL}] TO {WHT}CONTINU
E{YEL} LISTING"
PRINT" {DOWN} [{WHT}Q
{YEL}] TO {WHT}QUIT
{YEL} TO {WHT}OPTIONS
{YEL} MENU{DOWN}"
GET KES:IF KES="" THEN
1866
ON —(KE$="E")—2* (KES="
C") -3* (KE$="Q") GOTO189
6,1870,1880:GOTO1860
S=S+1:IF S < (X+1) THE
N183¢
S=1:GOTO1830
IF FL THEN 2100
KE=2: PRINT" {BLK}":GOTO
1786
PRINT" {HOME}{11 DOWN}"
TAB (16) ;"{WHT}"; :POKE1
9,65: INPUTTES: POKE19,@
:PRINT
PRINT" {DOWN} "TAB (16) ;"
{WHT }"; :POKE19,65:INPU
TTS$:POKE19,@: PRINT
IF TES<>ENS(S) OR TSS<
>SPS$(S) THEN ENS(S)=TE
$:SP$(S)=TS$:FL=6
GOTO 1836
PRINT" {CLR} {DOWN} "TAB (
9)"{WHT}SPANISH VOCABU
LARY QUIZ"
PRINTTAB(9) "{3}{23 T}"
PRINTTAB(16) "{DOWN} {6}
OPTIONS": PRINTTAB(16)"
{BLU}{7 T}{DOWN}"
PRINTTAB(8)"{WHT}1. EN
GLISH WORDS": PRINTTAB (
8)"{DOWN}2. PALABRAS D
E ESPA{N}OL"
PRINTTAB(8)"{DOWN}3. L
OAD A WORD FILE": PRINT
TAB(8)"{DOWN}4. FILE O
PTIONS"
PRINTTAB(8)"{DOWN}5. Q
uit" =
FS
FC
XX
XX
QQ
XR
ish}
FX
BG
EM
JM
Gc
XH
DC
cD
SF
FM
cD
Jc
PE
EA
KX
BD
KA
MF
QK
KP
GA
EJ
SG
21368
2135
2146
2288
2202
2265
2219
2215
2216
2226
2236
2246
2245
2255
2265
2276
2275
2280
2285
2435
2446
2445
2456
2455
2469
2465
2476
2475
2486
2485
PRINT"{2 DOWN} {6}
{4 SPACES}ENTER YOUR C
HOICE{WHT}: ";
GET KES:IF KES$<"1" OR
{SPACE}KE$>"5" THEN 21
35
PRINT KE$:ON VAL (KES)
{SPACE}GOTO 590,600,13
6G,1666,1108
POKE53286,@:POKE53281,
@
IF LV=1 THEN POKE 56,5
6:CLR:GOTO 2245
PRINTCHRS (14) "{6}{CLR}
"TAB (9)"{2 DOWN} {WHT}S
PANISH VOCABULARY QUIZ
"
PRINTTAB (9) "{3}{23 T}"
PRINTTAB (12) "{DOWN} {6}
COPYRIGHT 1991"
PRINTTAB(4)"{2 DOWN}
{WHT}COMPUTE PUBLICATI
ONS INTL LTD{2 DOWN}"
PRINTTAB (1G) "{YEL}ALL
{SPACE}RIGHTS RESERVED
"
PRINTTAB(13)"{3 DOWN}
{WHT}PLEASE WAIT..."
IF LV=@ THEN LV=1:LOAD
"SPAN.ML",8,1
DIM ENS (38) ,SP$(30) ,RN
% (30) ,F$ (128)
POKE 56334, PEEK (56334)
AND 254:POKE 1,PEEK(1
) AND 251:SyS 49217
POKE 1,PEEK(1) OR 4:PO
KE 56334, PEEK (56334) O
R1
READ A:IF A=-1 THEN228
(]
FOR I=8 TO 7:READ B:PO
KE 14336+A*8+1I,B:NEXT:
GOTO2278
POKE 53272, (PEEK (53272
)AND 246)OR 14
SC$="{21 SPACES}":GOTO
2169
DATA 30,36,0,102,1062,1
62,102,62,0
DATA 31,0,24,8,0,24,24
724,24
DATA 47,0,24,0,24,48,9
6,162,60
DATA 98,6,24,0,56,24,2
4,66,0
DATA 166,54,72,124,102
,102,162,162,0
DATA 112,6,8,60,6,62,1
02,62,0
DATA 113,6,8,60,102,12
6,96,608,0
DATA 120,6,8,102,162,1
02,162,62,8
DATA 121,6,8,69,102,16
2,102,60,0
DATA 158,219,255,153,1
53,153,153,193,255
DATA 159,255,231,255,2
G-27
PROGRAMS
55,231,231,231,231
DATA 175,255,231,255,2
31,207,159,153,195
DATA 226,249,231,255,1
99,231,231,195,255
DATA 234,2G1,183,131,1
53,153,153,153,255
DATA 240,249,247,195,2
49,193,153,193,255
DATA 241,249,247,195,1
53,129,159,195,255
DATA 248,249,247,153,1
53,153,153,193,255
DATA 249,249,247,195,1
53,153,153,195,255
DATA -1
SP 2496
SA 2495
QE 2568
SB 2505
HJ 2510
FG 2515
BP 2520
GJ 2525
SPAN.ML
CGGG:A9 65 85 FC AQ BS 85 FB 8G
COG8:AG BB 8C 3C CH BC 3D CH A2
CG@16:8C 3E CG AE 3E C@ Bl FB BE
CG18:C9 3C DG Gl 68 DD BH G4 36
C62G:FG 186 CA DD 66 64 FO 07 4E
CG@28:E8 E8 DD GG G4 DB G6 EE 72
C036:3D C® EE 3C CO EE 3E C@ 21
C638:C8 4C 13 CO 6B BB BG EA 8A
CO4G:EA AS 6G 85 FB 85 FD AQ 95
CG48:D8 85 FC AO 38 85 FE A2 4A
C656:68 AG 60 Bl FB 91 FD 88 C3
CG58:D@ F9 E6 FC E6 FE CA DO G7
CO6G:FG 60 AD Gl A2 GB AG BG 2E
C668:206 BA FF A9 62 A2 BC AG F7
C67G:CG 26 BD FF 26 CO FF A2 BB
CG78:61 26 C6 FF 26 CF FF 20 BB
CO8G:CF FF 20 CF FF 85 FB 26 19
CO688:CF FF 85 FB FG 25 A9 BD CE
C990:26 D2 FF AD 8D @2 29 @1 79
C998:D6 F9 26 CF FF AA 26 CF BC
CGAG:FF 28 CD BD A9 26 20 D2 AG
COA8:FF 26 CF FF FO D4 26 D2 1A
COBG:FF D@ F6 AY G1 26 C3 FF EF
COB8:26 CC FF 68 24 36 G0 GB 65
Christopher M. Stoy lives in
Ebensburg, Pennsylvania. o
SPEEDSWAP
By Larry Hagney
Most of us don't use SpeedScript to
write the Great American Novel. Usually
we confine our efforts to smaller endeav-
ors such as letters, reports, term pa-
pers, program documentation, and
such. As a result much of the text mem-
ory available to SpeedScript remains
empty.
Suppose you're using SpeedScriptto
write a term paper. In the midst of your
efforts, you remember a couple of par-
agraphs in a document that you wrote
a couple of months ago and decide
they would fit perfectly with this paper.
G-28 COMPUTE
To incorporate that material takes more
than a little effort. First, you save your
paper to disk, load in the old document,
copy the relevant section into the text
buffer, erase the old document, load in
the term paper, and then finally insert
the saved text in the appropriate area
of your paper.
Well, those days are gone forever.
With SpeedSwap patched into your
copy of SpeedScript3.2 for the 64, two
text documents can coexist in memory.
The problem mentioned above is now
simple to solve. Just move to your alter-
nate screen and load the old document.
Now both documents are independent-
ly accessible. Material can be copied
from one document to the other, or one
text area can be your workscreen while
the second serves as a storage area for
various reference materials.
Getting Started
SpeedSwap is a BASIC program
which contains a short (227 bytes) ma-
chine language routine. To avoid typ-
ing errors, enter the program using The
Automatic Proofreader; see “Typing
Aids” elsewhere in this section. When
you've finished typing, save a copy of
the program to a disk containing
SpeedScript. Your copy of
SpeedScript must be saved with the file-
name SPEEDSCRIPT because
SpeedSwap automatically loads and
runs that filename.
When you run SpeedSwap, it lets
you allocate memory for each of two
text areas, identified onscreen as area
0 and area 1. Default sizes of 21,504
and 21,760 bytes are displayed in
white text. Pressing CRSR-down de-
creases the size of text area O in 256-
byte chunks, while increasing text area
1 by a similar amount. CRSR-up per-
forms the opposite function. Note that
the total number of bytes of both text ar-
eas is always 43,264. This is 256
bytes less than SpeedScript normally
makes available because SpeedSwap
allocates a 256-byte safety zone be-
tween each text area.
If you're not sure how many bytes to
allocate for a file that's already on
disk, corresponding disk block sizes
are also displayed. Once the text
areas are adjusted for your needs,
press Return to boot SpeedScript.
SpeedSwap sets up its machine lan-
guage routine which loads
SpeedScript, patches itself in, and
then runs the word processor.
Only One Command
With SpeedSwap patched into
SpeedScript, you have complete, inde-
pendent control over two areas of text
memory. Only one command is need-
ed to switch between the two. Press
the Ctrl key and Commodore logo key
simultaneously to toggle between text
area O and text area 1.
When SpeedScript's screen first ap-
pears, you'll see a 0 in the command
line, indicating that you are now work-
ing in text area 0. Press the Ctrl key
and the = key simultaneously to see
the amount of memory allotted to this
area.
Press Ctrl-Commodore to access
area 1, indicated by a 1 in the com-
mand line. Area 1 provides 43,264
bytes minus the number of bytes in
area O for text storage.
Each text area is completely inde-
pendent of the other. Text can be print-
ed from, loaded into, or saved from
one area, without disturbing or being af-
fected by the other. You can erase all
text in one area while text in the other
area remains untouched. Each area al-
so supports its own text and back-
ground colors.
In short, every SpeedScript com-
mand behaves as though the active
text area is the only text area. One no-
table exception is SpeedScript’s text
buffer; text from one area can be cop-
ied into the buffer and inserted into the
other text area. Similarly, HUNT and RE-
PLACE phrases are also portable to
each area. One handy SpeedSwap fea-
ture is cursor positioning. When you re-
turn to a text area, you'll find the cur-
sor in the same position as you left it.
This is convenient when using one
text area for viewing reference materi-
als and the other for writing.
Keep in Mind
The changes SpeedSwap makes to
SpeedScript are not permanent, so
load and run SpeedSwap whenever
you want to use it. There are a few cau-
tions that you should bear in mind,
however. Do not attempt to load a docu-
ment into a text area for which you ha-
ven't allocated enough space. For in-
stance, if area O has 21,504 bytes al-
located and you attempt to load a 100-
block document, text area 0 will be
filled, but the rest of the document will
spill over into area 1. The text in area
1, however, cannot be accessed. You
must erase all text in area 1 before you
can use that screen.
This could be avoided by allocating
25,600 bytes to area 0 prior to loading
the 100-block document. Also, if you at-
tempt to load a file too large for area 1,
SpeedSwap’s machine language will
be overwritten by the text, and
SpeedScript will crash
Also, if you plan on_ using
SpeedSearch (May 1987) to search
any SpeedSwap-generated files, be
aware that documents saved from ar-
ea 0 will have a normal load address of
9472. Documents saved from area 1,
however, will have a load address of X
* 256 where X = (number of area 1
bytes / 256) + 37. However, the load ad-
dress is irrelevant to SpeedScript, any
SpeedScript enhancement program, or
any other program designed to proc-
ess SpeedScript text files.
If you plan to exit SoeedScript and
then return from BASIC, be sure that
text area 0 is active when you quit. Oth-
erwise, text could be damaged.
SPEEDSWAP
DB 10 REM COPYRIGHT 1991 COMPU
TE PUBLICATIONS INTL LTD
- ALL RIGHTS RESERVED
POKE868 , 234: PRINT" {CLR}
{N} {H}¢8}"; :DIMX,Q$,A,B,
C,S,E,E$:X=121:E$="DATA
{SHIFT-SPACE}ERROR IN LI
NES"
S=828:E=934:GOSUB186:1FC
<>11409THENPRINTES196"—"
250:STOP
SYSS:PRINT"SPEEDSCRIPT 3
.2 SPEEDSWAP": PRINT" {4}
{DOWN}COPYRIGHT 1991"
PRINT"COMPUTE PUBLICATIO
NS INTL LTD":PRINT"ALL R
IGHTS RESERVED{DOWN}"
S=53000:E=53226:GOSUB186
: IFC<>25771THENPRINTES$26
G"-"399:SYS9G6:STOP
PRINT"PRESS CRSR UP/DOWN
TO SELECT SIZE
{7 SPACES}(IN BYTES) OF
{SPACE}EACH TEXT AREA."
PRINT"PRESS RETURN TO LO
AD SPEEDSCRIPT."
PRINT"PRESS CTRL/C= FROM
GP 26
AQ 36
XC 46
MA 58
BH 66
GF 78
CM 86
XG 96
EQ
MS
DF
PK
SP
BP
GB
Qc
GD
AR
DM
MG
PG
BM
BG
SQ
BX
MA
EB
MF
JE
CF
DB
196
119
126
136
146
159
169
176
186
198
208
216
228
238
249
250
268
276
280
296
360
310
326
WITHIN SPEEDSCRIPT
{3 SPACES}TO SWAP TEXT A
REAS. {DOWN}"
FORA=.TO1:PRINT"TEXT AR
EA"ASPC(8) "DISK BLOCKS"
:NEXT
PRINT"TOTAL BYTES 43264
{3 SPACES}TOTAL BLOCKS
{SPACE}169{WHT} {UP}"
PRINT"{2 UP}"SPC(11-(Xx<
77) )X*256-9472SPC (13-(X
<137)—(X<47))" "X-37
PRINTSPC(11-(X>166)) 529
92-(X+1) *256SPC (13-(X>1
66)-(X>196))" "206-x
GETQ$:ON-(Q$="{DOWN}"OR
QS="{UP}")GOTO176:IFQS<
>CHRS (13) THEN140
POKE53041,X:X=X+1: POKES
3209,X:POKE53218,X:POKE
53224,X:POKE53226,X
SYS906: PRINT" {CLR} {8}LO
ADING SPEEDSCRIPT...":P
OKE808,237:SYSS:END
X=X+ (QS="{DOWN}") -(Q
{UP}") :X=X-162* ( (X=40) -
(X=203)) :POKE646,-(X=12
1) :GOTO120
C=.:FORA=S TOE:READB: PO
KEA,B:C=C+B: NEXT: RETURN
DATA126,169,0,141,14,22
6,169,27,141,17,208,169
791,141,20,3,169
DATA3,141,21,3,169,1,14
1,26,268,141,18, 208,88,
96,169,58,172
DATA135,3,205,18,208, 20
8,8,169,1,172,136,3,140
7 32,208,146,33
DATA2@8,141,18,208,201,
1,240,8,169,1,141,25, 20
8,76,188,254,169
DATA1,141,25,208,76,49,
234,0,12,0,126,169,0,14
1,26,208,141
DATA32,208,141,33,208,1
69,49,141,26,3,169,234,
141,21,3,169,1
DATA141,14,220,88,96
DATA169,5,162,8,168, 32,
186,255,169,11,162,205,
160,207,32,189,255
DATA169,@,133,10,141,8,
32,32,213,255,169,76,16
2,267,141,134,18
DATA142,135,10,142,11,3
2,169,121,141,177,9,169
137,141,9,32,173
DATA29,13,141,235,267,1
73,44,13,141,236,207,32
155,9,76,13,8
DATA162,49,142,38,216,1
73,11,32,261,2067,246,1,
262,142,38,4,173
DATA141,2,261,6, 208,103
,165,2,168,0,145,57,132
7162,165,162,41
DATA16, 24, 250,162,3,18
9,12,32,157,220, 267,202
116,247,162,3,189
DATA19,32,157,227,207,2
62,16,247,160,16,185,8,
32,190,216,207,153
DATA216, 267,138,153,8,3
2,136,16,246,162,1,181,
57,188, 233,207,157
DATA233,207,152,149,57,
* 2062,16,242,173,29,13,17
2,235,207,148,29,13
DATA141,235,207,173,44,
13,172,236,207,146,44,1
3,141,236, 207,160,0
DATA177,57,133,2,32,246
197 76,228,255,83,80,69,
69,68,83,67
DATA82,73,80,84,0,122,0
1207,8,8,0,0,40,0,122,0
BE 336
MC 349
EC 356
RB 368
RS 376
MH 3896
,
DK 399 DATAG,8,6,122,0,122
Larry Hagney lives in Las Cruces, New
Mexico. a
CREDIT CONTROL
By George R. Reid
When the temptation to use a conven-
ient credit card becomes too great to
ignore, a program such as Credit Con-
trol can be a welcome financial guide
and advisor. Successful credit card
management depends on three requi-
sites: a careful budget, accurate ac-
counts, and financial discipline.
Credit Control is a simple program for
the 64 that can help you plan your ex-
penditures and alert you against over-
spending. It also provides some gener-
al fiscal advice.
Getting Started
Credit Control is written entirely in BA-
SIC. To help avoid typing errors, use
The Automatic Proofreader; see “Typ-
ing Aids” elsewhere in this section. Be
sure to save a copy of the program
when you've finished typing it in.
Taking Charge
Have your monthly credit card state-
ment and any late purchase receipts
on hand when you run Credit Control.
When you first use the program or if
your financial situation later changes,
move the highlight cursor to the Statis-
tics menu option and press Return. A
series of prompts will guide you. Sim-
ply enter your card’s finance charge
G-29
PROGRAMS
rate, your monthly payment date, your
self-imposed monthly credit purchase
limits, and your credit limit. After you
make these entries, you'll return to the
main menu. ,
To record your credit transactions, se-
lect the Data Entry option. You'll be
asked to enter the month and day of
each transaction and the seller's
name and description of items pur-
chased. (Keep the name and descrip-
tion to 13 characters or less.) For your
first entry, enter the date and balance
due from your last monthly credit state-
ment. Then enter any credit purchases
or payments made since the statement
date.
At the end of each transaction, you'll
be given several options. You may en-
ter another transaction, make changes
to previous entries, return to the main
menu, or display your current entries.
After you've entered all of your credit
card transactions, return to the menu
and select the Storage option to save
your data. You may want to save the da-
ta with a name that is similar to your
credit card's. Use any valid filename
up to 12 characters in length. Credit
Control appends a prefix of CDF to
each filename for easy identification,
but omit these letters when loading the
data back into your program.
Taking Control
After you charge an item or make a pay-
ment on your account, toad your file
from the Storage option, select Data En-
try, and then enter the transaction. If
you make a payment, place a minus
sign immediately before any payment
amounts or returns. These will appear
as subtractions from the account bal-
ance. Save the file when data entry is
complete. Credit Control takes care of
everything else.
On the menu screen you'll be in-
formed of your credit card balance.
You'll also receive some friendly advice
on credit management, if necessary. A
listing of transactions and balances
can be made at any time. Error correc-
tions can be made easily for the last
two entries. Earlier errors can be recti-
fied by making a new entry that adds
or subtracts the proper amount to cor-
rect the balance.
Each credit card's account can be
maintained in a separate file. However,
G-30 COMPUTE
if you begin the system with a realistic
self-imposed monthly spending limit,
Credit Contro/ will advise you when to
get rid of those extra cards. Also, be
aware that you don't have to accept
the card company's suggested month-
ly payment amount. Credit Control will
advise you on payment size and other
factors, too.
Keep all your credit slips handy in
an envelope or simple file. Then get in-
to the habit of regularly entering them.
Follow the program's financial advice,
enjoy Credit Control, and don't abuse
your credit with overuse.
CREDIT CONTROL
XE @ REM COPYRIGHT 1991 - COMP
UTE PUBLICATIONS INTL LTD
- ALL RIGHTS RESERVED
EX 16 REM CREDIT CONTROL -BY G
- REID. CC
KC 20 MX=61:X=@:L=1:0$="16.5":
PS$="10TH OF MONTH" :M=16:
CL=1666
AK 38 DIM D$(MX, 4)
AA 40 PRINT"{CLR}"
AJ 5@ FORXX=1T05: PRINT" {DOWN}"
:NEXT: GOSUB986
MR 66 PRINT"{HOME}{2 DOWN}";TA
B(13)"{GRN}CREDIT
{ SHIFT-SPACE) CONTROL{7}"
CX; 70 PRINTTAB (13) "**Aeeeeenee
wee
CP 86 PRINT CHRS$(14)
BP 96 SYS="{RVS}{CYN}":SZ$="
{OFF}{7}"
GE 166 N$(1)="DATA ENTRY":NS(2
ISPLAY"
AS 110 N$(3)="STORAGE":NS$(4)="
STATISTICS"
SM 126 NS$(5)="EXIT"
ER 130 FOR C=1T05:PRINTTAB (13)
NS(C) NEXT
GK 146 PRINT"{6 UP}":C=1:PRINT
TAB (13) SY$NS(1)S2$
XD 150 GETGS$: IFGS=""THEN150
KR 160 IFGS=CHRS (13) THEN200
CE 176 IFGS="{DOWN}"THEN PRINT
"{UP}"; TAB (13)NS$(C) sC=C
+1:PRINTTAB (13) SYSNS$(C)
SZ$
MK 180 IFC=6THENPRINT"{UP}";:G
OTO146
DX 196 GOTO15¢
AE 266 ON C GOTO336,576,730,21
86,1249
AQ 216 PRINT"{CLR}{2 DOWN}STAT
ISTICAL DATA ENTRY":PRI
NT
QE 220 PRINT"ENTER YOUR NEW:-"
XS 236 PRINT" {DOWN}ANNUAL FINA
NCE CHARGE RATE"
GA 240 PRINT"CURRENT IS--";0$:
FS
AX
cP
AQ
FA
sJ
FF
DH
GQ
DE
HQ
BD
QE
KA
256
266
276
2868
296
366
316
3208
336
346
358
368
376
380
396
499
416
426
436
449
456
466
476
486
499
566
518
528
536
546
558
568
INPUT O$:IFVAL(0$) <1THE
N21
PRINT" {DOWN}MONTHLY PAY
MENT DATE"
PRINT"CURRENT IS-~";P$:
INPUT P$
PRINT" {DOWN}BUDGETED MA
XIMUM MONTHLY CREDIT"
PRINT"PURCHASES AMOUNT
{SPACE}S$"
PRINT"CURRENT IS--"jMz1
NPUT Mz: IFM<1LTHEN27@
PRINT" {DOWN}ASSIGNED CR
EDIT LIMIT"
PRINT"CURRENT IS--";CL:
INPUT CL
GOTO4G
X=X+1:Y=@:1$="--":1IFXOM
X-1THENPRINT" {CLR}
{DOWN}FULL FILE":X=L:GO
T0436
PRINT" {CLR}{2 DOWN}ENTE
R MONTH & DAY OF PURCHA
SE":GOSUB420
PRINT" {CLR}{2 DOWN}ENTE
R SELLER'S NAME/DESCRIP
TION" :GOSUB420
PRINT" {CLR} {2 DOWN}ENTE
R AMOUNT (CHARGED OR PA
Ip) $"
PRINT" (PAYMENT MUST BE
{SPACE}MINUS E.G.
{2 SPACES}-56) {DOWN} ":L
=X:GOSUB420
B2=B2+VAL (D$(X,3)) :B2=I
NT (B2*100+.5)/100:D$ (Xx,
4) =STRS (B2)
IFVAL (D$ (X,3) ) <OTHENB4=
B3:B3=B2
IFX=LTHEN430
X=X+1:GOTO526
INPUTI$:Y=¥+1:D$ (X,Y) =I
$:1$="--":RETURN
PRINT" {DOWN} E=ENTER: C
=CHANGES: M=MENU: D=DIS
PLAY"
GET N$:1FNS=""THEN446
IF NS$="E"THEN336
IF N$="C"THENSGG
IF N$="M"THEN4G
IF N$="D"THENS7@
GoTO446
PRINT" {CLR} {DOWN}HIT RE
TURN AFTER CHANGES OR T
0 BY-PASS{2 SPACES}AN E
NTRY"
X=X-1:1IFX<1THENX=1
PRINT" {DOWN}ENTER NEW D
ATA AT CURSOR:-"
B2=VAL (D$(X-1,4)) : PRINT
PRINT" #";X;TAB (5) "DATE:
{3 SPACES}";D$(X,1);:IN
PUT D$(X,1)
PRINTTAB(5) "SELLER: ";L
EFTS$ (D$(X,2),13);:INPUT
DS (X,2)
PRINTTAB(5) "AMOUNT: ";D
$(X,3);2INPUT D$(X,3):P
HJ
AA
578
586
598
609
616
620
636
646
656
666
678
680
699
768
716
726
736
746
758
768
7768
786
796
806
819
820
836
846
850
866
870
880
896
966
916
926
936
949
959
966
976
989
996
RINT: GOTO38G
G=1:C2=18:C1=C2
PRINT" {CLR} {DOWN}";C$:P
RINT" NO DATE{2 SPACES}
SELLER/DETAIL{2 SPACES}
AMOUNT BALANCE"
PRINT" =- ~~
FOR C=GTO L
PRINTC;TAB (4) LEFTS$ (D$(C
11) ,6);TAB (16) LEFTS (D$ (
C,2),13);
PRINTTAB (23) ; :F$=D$(C,3
)
GOSUB640:F$=D$(C,4) :GOS
UB64G: PRINT: GOTO680
FS="{5 SPACES}"+FS:FTS=
RIGHTS (F$,3) : IFLEFT$ (ET
$,1)="."THEN676
IFMIDS (ET$,2,1)=". "THEN
FS=FS$+"6":GOT0670
FS=FS+".66"
PRINTRIGHTS (F$,8) ; :RETU
RN
IF C<CLTHEN726
PRINT" {DOWN} RETURN"
GET PAS: IFPAS=""THEN70G
C1=C1+C2
NEXT: PRINT: GOT043G
PRINT" {CLR}{2 DOWN}":IN
PUT"ENTER FILE-NAME";CS$
PRINT” L=LOAD:
{2 SPACES}S=SAVE"
GET X$:IFXS$=""THEN756
IFX$="L"THEN9OG
IFX$<>"S"THEN75@
7
GETX$:IFX$
IFX$<>"Y"THEN4G
OPEN 1,8,2,"@0:CDF"+CS$+
"S,0"
QS=CHRS (13)
PRINT#1,PSQSO$QSM,QSL,Q
SCL
C=1:Y=1
IF C>LTHEN89@
AS=D$(C,Y) :PRINT#1,AS$:Y
=Y+1
IF Y>4THEN Y=1:C=C+1
GOTO85a
CLOSE 1:PRINT"{CLR}
{DOWN}SAVED "C$:GOTO5¢
OPEN 1,8,2,"6:CDF"+CS+"
Tork
INPUT# 1,P$,0$,M,L,CL
C=1:Y=1
IF C>LTHEN97@
INPUT#1,AS$:D$(C,¥)=A$:¥
=Y+1
IF Y4THEN Y=1:C=C+1
GOTO93G
CLOSE 1:X=L:B2=VAL(D$(C
-1,4)) :GOT0576
U=VAL (D$ (X,4))
UM=INT ( (U-M) *160+.5)/16
6
1060 PRINT: PRINT" {YEL}SELEC
T{7} WITH CURSOR AND R
ETURN"
XG
KQ 1616
PRINT" {GRN}YOUR CURREN
T BALANCE IS $";
IFU>MTHENPRINT"{3}"U"
£7}":GOTO1656
PRINTU: IFU=<@THENPRINT
" CONGRATULATIONS !":GO
701230
IF (CL-U)<CL*.2 THEN PR
INT" YOUR CREDIT LIMIT
Is $";CL
IFVAL (D$(X,3)) <@THEN1G
90
PRINT" TO AVOID FINANC
E CHARGE AT ";0$;"% AP
R,™
PRINT" PLEASE PAY BY "
7PS; "479"
IFU=<M THEN1230
PRINT"{1}BALANCE EXCEE
DS $";STR$(M) ;"-BUDGET
BY";UM
R=VAL (0S) /12/166:1F (U/
M*R) >.99999THEN1210
N=LOG (1/(1-(U/M*R))) /L
0G (1+R)
PRINT" IF NO FURTHER P
URCHASES, IT TAKES"
PRINTINT (N*10+.5)/16;"
MONTHS TO PAY OFF.{7}"
IF N<1.15THEN1230
IF VAL (D$(X,3))<(.25*M
)THEN IF U<B4THENPRINT
" GOOD TREND...BUT"
IF N>2 THEN1220
PRINT"{3}INCREASE YOUR
BUDGET TO $"; INT (M*N)
Gc 1626
BR 1636
BC 10646
PH 1656
AD 1666
HD 1676
JA 1686
FA
DD
1696
1166
RF 11190
MF 1126
QE 1136
HE 1149
1156
1166
KD
JK
1176
1186
FQ
kQ
7
IF N<1.5THEN1236
PRINT" OR":GOTO1226
PRINT"{3} CANNOT BE RE
PAID.{2 SPACES}BUDGET
{SPACE}OF $";M;"IS
{4 SPACES}VERY LOW.
{2+ SPACES}REPEAT!"
PRINT" { YEL}HIDE
{ SHIFT-SPACE} YOUR
{SHIFT-SPACE}CARD AWAY
1{7>"
RETURN
PRINT"{2 DOWN}DID YOU
{SPACE}SAVE YOUR DATA?
{3 SPACES}¥/N"
GETSS$:IF SS$=""THEN125@
IF S$="Y"THEN PRINT"
{CLR}":END
1278 GoTO4g
1196
1266
1216
PQ
BA
KD
AK 1226
1236
1246
cQ
AG
JG
MA
1256
1266
HP
George R. Reid is a professor of busi-
ness. He lives in Savannah, Georgia,
and has excellent credit. a
PLOTTER
By Daniel Lightner
Have you ever designed a screen on
the 64 that you would like to use in a
program that you're writing? Poking
those character values into the proper
screen memory locations is a fast and
efficient way to do it, but determining
those poke values is another story. Plot-
ter is just the utility to help you deter-
mine those values.
Typing It In
Plotter is written entirely in machine lan-
guage. To enter it, use MLX, our ma-
chine language entry program; see
“Typing Aids” elsewhere in this sec-
tion. When MLX prompts, respond
with the following values.
Starting address: C000
Ending address: C207
Be sure to save a copy of the program
before you exit MLX.
Putting It to Work
To use the program, enter LOAD"PLOT-
TER’,8,1 and then press Return.
When it has finished loading, don't run
it. Instead, type NEW, press Return,
and then enter SYS49152. If all has
gone well, the program will announce
its presence.
To see how Plotter works, place the
cursor on any character, anywhere on
the screen. Press f1. Two numbers
should appear in the upper left corner
of the screen. The first number is the
screen location of the cursor, and the
number following the comma is the
poke value of the character stored at
that location.
If you load Plotter from the 64's open-
ing screen and go through the preced-
ing steps, you should see that Plotter
has been enabled and the word
READY should be near the bottom of
the screen. Place your cursor over the
letter R in the word READY and press
f1. At the top of the screen, you may
see 1904,18. If your cursor isn't on
line 24, you may get a different first num-
ber, but you should get an 18, which is
the value to poke to the screen to print
an R.
Now press the space bar to delete
the letter R. Move the cursor to any
G-31
PROGRAMS
EN HD ST aT LSE OS NCS SEL SES EE
blank line on the screen, enter POKE
1904,18, and press Return. (Use the
numbers at the top of your screen if
they are different.) The R should now
be back in the word READY. Press f7
to clear those values; then move the cur-
sor to another location and press f1
again.
How Does It Do That?
Plotter wedges itself into the 64’s hard-
ware interrupt routine and then turns
control of the 64 back to the BASIC edi-
tor. The program waits in the back-
ground, quietly scanning the keyboard
for f1 to be pressed. When it detects
f1, it copies the characters and colors
from the first eight bytes of screen mem-
ory. Plotter writes the screen location of
the cursor and the value of the charac-
ter under the cursor to the top left cor-
ner of the screen. It then scans 7 for
a keypress. When the program detects
that the f7 key has been pressed, Plot-
ter replaces the characters at the top
of the screen that may have been over-
written.
You can disable Plotter by pressing
Run/Stop and the Restore key simulta-
neously. It would be good practice to
disable Plotter before using the disk
drive. You can activate it again with
SYS49152.
PLOTTER
C66G:AG 6G BY BE Cl 26 D2 FF 48
CG68:C8 CO 54 D@ F5 AD 14 G3 47
C610:8D 11 63 AD 15 63 8D 12 B9
CG18:63 78 AJ 2B 8D 14 63 AY 8D
CG2G:CG 8D 15 G3 58 AI BO 8D 2F
CG28:26 CB 60 AE 26 CB EG G8 95
C630:D@ 16 A6 CB EG 64 FB G3 2D
C@38:6C 11 G3 A2 61 8E 26 CB OD
CG4G:A5 CE 8D 36 CB 6C 1l 63 92
CO48:A5 CF C9 Gl FO 13 AE 26 2B
CG@50:CB EG G1 FO 12 ED G2 FG 28
C@58:14 E@ @4 FO G7 ED G3 FG SE
CG66:99 6C 11 83 4c 34 Cl 4C D6
CG68:D4 CO 4C 88 Cl AY G3 8D DE
CG70:26 CB AS Dl 85 FB A5 D2 G1
C@78:85 FC 18 A5 D3 65 FB 85 6B
CG80:FB A9 66 65 FC 85 FC AS SE
C@88:FC A6 FB 8D 34 CB 8E 33 AB
CG9G:CB A2 69 8E 35 CB AG BO 75
CG98:AD 33 CB DD A5 Cl AD 34 D8
CGAG:CB FD A6 Cl 96 GF 8D 34 88
C@A8:CB AD 33 CB FD AS Cl 8D 36
COBG:33 CB C8 D@ E3 98 CA FG EC
CGB8:10 C9 BB FG G3 8D 35 CB SE
C6CG:2C 35 CB 3@ 04 AI GG FG DI
CGC8:05 29 7F 20 7B Cl CA 10 91
C@DG:C5 6C 11 G3 AD B2 8D 26 33
C@D8:CB AG GG AI GB 85 FB AY BA
G-32 COMPUTE
COEG:04 85 FC A9 21 85 FD A9 C4
CGE8:CB 85 FE Bl FB 91 FD C8 97
CGOFG:CO 68 DB F7 AB BB AI BB CE
COF8:85 FB A9 D8 85 FC AY 29 9B
C160:85 FD A9 CB 85 FE Bl FB 3F
C168:91 FD C8 C@ 68 DG F7 AD 16
C116:03 8D @6 D8 8D G1 D8 8D BS
C118:02 D8 8D G3 D8 8D G4 DB 92
C120:8D 65 D8 8D 86 D8 8D 67 55
C128:D8 A2 64 86 FE A2 O08 86 B2
C13@:FD 6C 11 @3 A5 CB C9 G3 13
C138:F@ 63 6C 11 63 AY 6G 8D DF
C146:26 CB AG GG AY BG 85 FB 2F
C148:A9 64 85 FC AQ9 21 85 FD FC
C156:A9 CB 85 FE Bl FD 91 FB E@
C158:C8 CO @8 DG F7 AG BG AD 6A
C166:06 85 FB A9 D8 85 FC A9 DF
C168:29 85 FD A9 CB 85 FE Bl 66
C176:FD 91 FB C8 C@ 88 DG F7 23
C178:6C 11 63 8C 31 CB AB BB 99
C180:91 FD E6 FD AC 31 CB 66 2B
C188:A9 26 8D G6 G4 8D G7 G4 63
C198:A9 2C 26 7B Cl AD 36 CB AC
C198:85 FB A9 G66 85 FC AQ G4 BA
C1AG@:8D 20 CB 4C 87 CO G1 86 72
C1lA8:GA G6 64 GG E8 63 18 27 58
C1BG:@D @D 9A 43 4F 58 59 52 46
C1B8:49 47 48 54 28 31 39 39 72
C1C@:31 6D 43 4F 4D 56 55 54 28
C1c8:45 26 56 55 42 4C 49 43 6F
C1DG:41 54 49 4F 4E 53 20 49 71
C1D8:4E 54 4C 26 4C 54 44 @D 6D
C1EG@:41 4C 4C 206 52 49 47 48 32
C1E8:54 53 26 52 45 53 45 52 E8
C1FG:56 45 44 GD GD 56 4C 4F DB
C1F8:54 54 45 52 20 45 4E 41 7D
C200:42 4C 45 44 GB BG GG BB AG
Daniel Lightner lives in Sidney, Mon-
tana. He is the author of Noah's Arc,
which was published in July 1991. 0
SHOWDOWN
By Arihant Jain
Some games are very simple to play,
but difficult to master. Showdown is
such a game.
This board game for one or two play-
ers resembles Chinese checkers. The
board has 32 pegs arranged in ina
cross-shaped grid, with one open po-
sition in the center. The object is to
clear the board of as many pegs as pos-
sible. You remove a peg by jumping it
with an adjacent peg, but you must
land in an empty space. If that space
has a peg in it, you can't jump.
Typing It In
Showdown is written entirely in BASIC.
To avoid typing errors, enter the pro-
gram with The Automatic Proofreader;
see “Typing Aids” elsewhere in this sec-
tion. Be sure to save a copy of the pro-
gram when you've finished typing it in.
Let’s Play
When you run Showdown, you'll be
- asked whether you want to play or
watch a replay of an earlier game.
Since there will be nothing to watch at
first, press P for play.
You'll then be asked whether you
want to play singles or a combined ef-
fort. If you elect to play alone, make
sure your joystick is in port 2. When
two people play, two joysticks are re-
quired, and players take turns jumping
pegs.
Pegs are removed automatically
when you jump them. Remember that
you can jump a peg only if you are
next to it and the space on the other
side of the jumped peg is vacant. You
can only jump up, down, left, or right.
Diagonal moves are not allowed.
Use the joystick to position your cur-
sor on any peg you like. To jump,
press the fire button and then move
the stick in the direction you want to
jump. If the move is legal, the comput-
er will make the move and remove the
jumped piece. You'll get a message if
a move is illegal.
When you have removed as many
pegs as possible, press the @ key to re-
ceive your score and a message
about how well you played. If you are
sharp and have planned your moves
carefully, it's possible to remove all the
pegs but one.
Watch a Replay
When you've finished a game, you'll be
asked if you want to save it, Saving
games will give you a chance to
watch each move again and see
where you went wrong. It'll also give
you a chance to prove to others how
brilliantly you played.
If you decide to save a game, Show-
down will ask for a filename and then
your name. The game and each move
will be saved to disk.
To see a saved game, press R for re-
play on the opening screen and supply
the filename. The game board will ap-
pear, and Showdown will automatical-
ly play back every move you made dur-
ing that game. You can slow down the
replay moves by pressing L or make
them move faster by pressing F.
SHOWDOWN
QF 100 DIMF (2668) ,G(2609)
FR
AK
PC
RA
JA
HB
RX
116
126
156
166
176
189
196
268
210
220
236
240
2568
260
276
280
290
360
316
328
330
346
358
368
376
386
396
400
GOSUB 886
GOSUB1OGG
S = 1475:0=1274:B=1391:
C=1397:M=@:W=0:F=8:G=G:
U=a
PRINT" {CLR} {HOME} {BLK}"
:POKE 53286,13:POKE5328
1,12
PRINT"{4 DOWN}
{18 RIGHT} {RVS}
{4 SPACES} {DOWN} {LEFT}
{SPACE} {DOWN} {LEFT}
{5 LEFT} {UP} {LEFT}
{UP} {LEFT} "
PRINT" {HOME}{7 DOWN}
{7 RIGHT} {RVS}
{3 SPACES} {OFF }WWW{RVS}
{3 SPACES} {OFF} {UP}
{6 LEFT }Www"
PRINT" {DOWN} {7 RIGHT}
{RVS} {DOWN} {LEFT}
{DOWN} {LEFT} {DOWN}
{LEFT} {3 SPACES} {OFF}W
{RVS}W{OFF }W{RVS}
{3 SPACES} {UP} {LEFT}
{UP}{LEFT} {UP}{LEFT}
{8 LEFT} {OFF}";
PRINT "WHWWWWW{ DOWN}
{7 LEFT} WWW WWW"
PRINT"{8 RIGHT}! us
PRINT" {DOWN}{9 RIGHT}
{RVS} {OFF }WWW{RVS}
{OFF}"
PRINT"{9 RIGHT} {RVS}
{5 SPACES}"
IFH=-1THEN 1196
v=2
IFV=3THEN V=1
IFI=@THENV=2
JO=USR(V) :GETAS
IF (JOAND15) =1THENW=-48:
GoTO48¢
IF (JOAND15) =4THENW=-1:G
oT048¢
IF (JOAND15) =8THENW=1:GO
T0480
IF (JOAND15) =2THENW=48:G
oT048¢
IF (JOAND16)=@THEN GOTO3
46
IF A$ ="@" THEN 616
GOTO 246
JO=USR(V) : IF (JOAND15) =6
THEN GOTO34@
IF (JOAND15) =1THENW=-46:
GOTO4G8
IF (JOAND15) =4THENW=-1:G
OTO468
IF (JOAND15) =8THENW=1:GO
T0486
IF (JOAND15) =2THENW=46:G
OTO466
GOTO 246
Y=S+W:R=@:IF PEEK(S)=21
STHEN R=R+1
416
426
436
446
456
466
478
486
496
568
5196
526
530
546
550
566
579
586
596
606
610
626
639
646
658
666
676
689
699
766
716
726
736
746
756
768
776
788
799
IFPEEK (Y¥) =87THENR=R+1
IF PEEK (S+W+W) =32THENR=R
+1
IFR=3 THEN 456
GOTO 53G
M=M+1: POKES , 32: POKES+W,
32:GOSUB560:POKE S+W+W,
215:S=S+W+W: V=V+1:U=U+1
F(U)=1:G(U) =W
GOTO 240
J=0:Z=PEEK(S):Y=S+W :IF
PEEK (Y) =87THENQ=87:J=J+
1
IFPEEK (Y) =32THENQ=32:J=
J+1
IF J=1 THEN 526
GOSUB 530
POKES , 2-128: POKES+W,Qt+1
28:S=S+W:U=U+1:F (U)=8:G
(U)=W:GOTO 246
PRINT" {HOME} {22 DOWN}IL
LEGAL MOVE":GOSUB 568
PRINT" {HOME}{22 DOWN}
{12 SPACES}"
GOTO{2 SPACES}249
REM
POKE54296,15:POKE54277,
64: POKE54273,162: POKE54
272,37
POKE54276,17:FORT=1T026
@:NEXT
POKE54276,16:FORT=1T058
:NEXT
RETURN
J=32-M:F (U+1) =-1:G(U+1)
=6
PRINT"{CLR}{2 DOWN}";J;
"PEGS REMAINING{2 DOWN}
"
IFJ>1@THEN PRINT"POOR!"
:W=-1:GOTO708
IFJ>7THEN PRINT"SATISFA
CTORY PLAY!":W=-1:GOTO7
UT)
IFJ>STHEN PRINT"GOOD!":
W=4:GOTO766
IFJ>3THEN PRINT"GREAT!"
:W=5:GOTO70G
IFJ>2THEN PRINT"WELL PL
AYED!":W=11:GOTO760
IFJ>1THEN PRINT"MISSED!
"3W=6:GOTO786
IFJ>@THEN PRINT"DID IT!
":W=6:GOTO700
PRINT"{3 DOWN}WANT TO S
AVE? (Y¥/N)"
GETK$:IF KS=""THEN716
IF K$<>"N"ANDKS<>"Y"THE
N 719
IFKS="N" THEN 860
INPUT "FILENAME" ;NS: INPU
T"YOUR NAME";MS
OPEN15,8,15:0PEN2,8,2,"
@O:"+NS+",S,W"
PRINT #2,MS$:FORV=1TOU+1
PRINT#2,F (V)
PRINT#2,G(V) :NEXT V
CLOSE2:CLOSE15
PRINT"{3 DOWN}WANT TO P
LAY? (¥/N)"
IFW<@THENGOTO840
QZ=4*40:FORK=Q2+55336TO
QZ+55336+W: POKEK,V:V=V+
1: IFV>255THENV=0
NEXT K
GET M$:IF M$="" THEN 81
t]
IF M$="N"THENPRINT"
{CLR}":END
IF M$="Y" THENGOTO 120
GOTO 840
JJ=49152:JH=INT (JJ/256)
2 JL=JJ-JH*256:POKE785,J
L: POKE786,JH
FORK=JJTOJJ+67:READ Y:P
OKEK,Y:NEXT
DATA 120,76,97,176,21,1
69,127,141
DATA 6,220,173,1)226,20
1,255,248
DATA 4,169,31,208,13,17
3,0,226
DATA 16,8,169,255,141,0
7220,173
DATA 1,226,41,31,73,15,
268,4
DATA 133,97,240, 23,133,
98,169,136
DATA 133,97,169,0,133,9
9,133,108
DATA 133,191,133,182,19
8,97,6,98
DATA 16,250,88,96
RETURN
PRINT"{CLR}{2 DOWN}PLA
Y, WATCH A REPLAY (P/R
) "CHR$ (142)
GETFS$:1FFS=""THEN1G16
IFFS="P" THEN 1050 ~
IFFS="R"THEN 1120
GOTO 1616
PRINT" {CLR}{2 DOWN}ONE
OR TWO PLAYER GAME? (
1/2)"
GET IS$::IFI$
6
IFIS="1"THEN I=6:GOTOL
166
IFIS$="2" THENI=1:GOTO
{SPACE}996
GOTO 1666
H=G6:PRINT"{2 DOWN}JOYS
TICK IN PORT 2"
PRINT"PRESS "CHRS$(34)"
@"CHRS$(34)" TO END":FO
R E=1 TO 966:NEXT:RETU
RN
U=8:N=6: INPUT" FILENAME
"UNS
OPEN15,8,15:0PEN2,8,2,
"O:"4+NS+",S,R": INPUT#2
M$
GOTO 1339
INPUT#2,F(U) ,G(U) .
IFF(U)=-1 THEN U=U-1:G
0T01188
“THEN1G6
G-33
PROGRAMS
KF 1176
FR 1186
U=U+1:GOTO 115¢
H=-1:PRINT"{CLR}":GOTO
150
S=1475:TI%=208
FOR V=GTOU
E=S+G(V) :GETAS
IF F(V)=G@THEN POKES, PE
EK(S)-128:POKE E,PEEK(
=S+G(V)
THENPOKES , 32
: POKEE, 32: POKEE+G (V) ,2
15 :S=S+G(V)+G(V) :GOsU
B560
IFAS="E"THENTI$=TI%-50
IFAS="L"THENTI$=TI%+50
IF TI$>106OTHENTI%=106
i‘)
IF TI$<@THENTI$=0
FORA=1TOTI$:NEXT:NEXTV
:PRINT"BY:";MS
PRINT" {2 DOWN} {RVS} PRE
SS SPACE BAR TO CONTIN
UE"
GETAS:IFAS<>" "THEN 13
6G
CLOSE2:CLOSE15
RESTORE:GOTO 116
INPUT#15,EN,EM$,ET,ES
IF EN>@THENPRINTEMS:GO
TO 1360
GOTO 1150
CLOSE15:CLOSE2:GOTO 11
26
1196
XH 1269
GJ 1216
KR 1226
EG 1236
JP 1246
1250
CJ 1260
RA 1276
HR 1286
QH 1296
HJ 1366
JA 1316
SR 1326
XM 1336
XQ 1346
AH 1356
XH 1360
Arihant Jain lives in Ludhiana, a city in
northwest India. a]
MEDIUM-DENSITY
DRIVER
By Matthew Spinks
Over the years, I've done a good deal
of graphics work on my computer that
has included plotting graphs and draw-
ing pictures. I've always been frustrat-
ed by the high-resolution graphics sys-
tem used by the 64. It's generally more
trouble than it's worth when all you
want to do is plot a simple graph or pic-
ture,
At the other extreme of the graphics
spectrum, the resolution of the normal
text screen is usually too low to provide
the detail required by straightforward
graphs or pictures. What is needed is
a graphics mode between the two ex-
tremes, amode which offers a reasona-
ble resolution but avoids the complexi-
ty associated with bitmapped graphics.
Such a graphics mode does exist. If
you enter PRINT CHR$(190): PRINT
G-34 COMPUTE
CHR$(188): PRINT CHR$(187): PRINT
CHR$(172), you'll see four characters
on the screen. Each one fills one quad-
rant of a whole text cell. These charac-
ters enable the normal text screen to be
turned into amedium-resolution graph-
ics screen which has twice the resolu-
tion of the ordinary text screen. This for-
mat provides new screen dimensions of
80 points horizontally by 50 points ver-
tically, an overall resolution of 4000
plot points.
This medium-density graphics mode
has an attractive, chunky feel to it and
is excellent for plotting graphs and draw-
ing simple pictures. It also allows text
and graphics to coexist peacefully. Un-
like bitmap mode, the medium-density
graphics mode requires no extra mem-
ory to store graphics data, and it re-
quires only a small graphics driver. Per-
haps best of all, the medium-density
graphics mode is simple and easy to
use.
Entering the Program
Medium-Density Driver is a short rou-
tine written entirely in machine lan-
guage. To enter it, use MLX, our ma-
chine language entry program; see
“Typing Aids” elsewhere in this sec-
tion. When MLX prompts, respond
with the following values.
Starting address: 033C
Ending address: 0303
When you've finished typing, be sure
to save a copy of the program before
exiting MLX.
The driver sits safely in the cassette
buffer, leaving the overused area at
49152 ($CO000) free for your own pro-
grams. This lets you plot individual
points to the normal text screen.
After you've typed in a copy of the
driver, you can then use it to create
your own medium-density graphic
screens. To use it, simply load the ma-
chine language program with the ,8,1
extension and type NEW. This NEW
command is necessary because it re-
sets some important BASIC pointers.
The Plot Thickens
To plot graphs or pictures, simply use
the command SYS828, x, y, on/off, col-
or. Here x and yare the screen coor-
dinates for points to be plotted. The
range is 0-79 on the x-axis and 0-49
along the y-axis. On/off is a flag which
determines whether or not a point is
plotted or erased. If on/off = 1, a point
will be plotted. If on/off = 0, a point
will be erased. Color, of course, is the
color of the point to be plotted and
should be in the range 0-15, represent-
ing the standard Commodore colors.
For example, to plot a white point at
the top left-hand corner of the screen,
enter the following command:
SYS828, 0, 0, 1,1
Similarly, to erase a point at the oppo-
site corner (the bottom right-hand cor-
ner), the command SYS828, 79, 49, 0,
1 would be used. Note that despite the
fact that we are erasing a point, the col-
or must still be specified. This is nec-
essary because the program checks
all parameters, and if any value falls out-
side the ranges mentioned or if any
parameter is missing, you'll get a SYN-
TAX ERROR.
Points to Ponder
Because the medium-density graphics
mode uses the normal text screen and
color memories, setting the color of
one point will also affect the color of
the neighboring three points. Some
care must be taken when plotting in
more than one color to achieve the de-
sired effect. Although this may seem
like a drawback at first, it does have
the advantage of allowing text and stan-
dard Commodore graphics characters
to be integrated onto the graphics
screen.
Text can be printed and character
values can be poked to the screen in
the normal way. Note, however, that
with the graphics driver you can nei-
ther erase text or nongraphics charac-
ters nor plot over text or other char-
acters. This prevents text and other
graphics from being accidentally
erased.
A Demonstration
Demo is a short demonstration pro-
gram written entirely in BASIC. It will
give you some idea of how you can
use the driver. To help prevent typing
errors, use The Automatic Proofreader
to type it in; see “Typing Aids” else-
where in this section.
Demo plots Lissajous figures.
These are a series of curves found by
combining perpendicular harmonic mo-
tions. They are commonly exhibited by
feeding two harmonic frequencies into
an oscilloscope's X and Y input cir-
Cuits. (Don't worry. You don't have to un-
derstand Lissajous figures to see how
the program works, They're easier to
demonstrate than to explain.)
Before running the demonstration,
make sure Driver is already in memo-
ry. When running the demonstration,
try experimenting with the values the
program asks for. Entering 1,2 will pro-
duce entirely different results than will
241,
The patterns produced will be in mon-
ochrome, but you can easily add color
by changing the value of the color var-
iable, C, in line 270. For a rainbow of
color, try Demo with these lines added.
262 C=C+1
264 IF C=16 THEN C=0
Now that you have an idea of how Me-
dium-Density Driver works, try creating
some figures or patterns of your own.
MEDIUM DENSITY DRIVER
@33C:AG 63 8C D2 G3 26 GB E2 8D
0344:8A AC D2 63 DI BE 63 BO C5
@34C:6E 99 D3 G3 88 16 EB AO AG
@354:62 8D D7 63 4E DS G3 96 4A
935C:66 GE D7 63 GE D7 G3 4E 38
@364:D6 63 96 G3 4E D7 G3 AE SF
G36C:D5 63 26 FO E9 AD D6 G3 E7
0374:18 65 Dl 85 Dl 96 62 E6 2E
937C:D2 20 24 EA A® 66 Bl Dl 61
@384:A2 OF DD C2 63 FG G4 CA 36
@38C:16 F8 66 AD D4 63 FG 1A 6E
@394:E0 GF FO 15 AD D3 G3 91 92
@39C:F3 8A 2C D7 G3 DG BA 18 CI
@3A4:6D D7 63 AA BD C2 63 91 F2
: 8A 2C D7 93 FO F9 6E
D7 63 4C A7 63 4C DB
16 62 32 58 26 7C 64
6C El 7F FB 7B FF 51
62 FE FC A@ 66 @@ 65
CX 166
REM DRIVER DEMONSTRATIO
N
BF 116 REM COPYRIGHT 1991 - CO
MPUTE PUBLICATIONS INTL
LTD — ALL RIGHTS RESER
VED
REM MAKE SURE DRIVER IS
IN MEMORY!
JB 126
DK 136
KX 135 PI=3.14159
JS 140 POKE 53280,11:POKE 5328
shea
GK 15@ PRINTCHRS(147)CHRS(5)
RD 166 PRINTTAB(11) "LISSAJOUS
{SPACE} FIGURES"CHRS (17)
RX 170 PRINT"PRESS ANY KEY AFT
ER VIEWING FIGURE"
QE 18@ PRINTCHR$(17)"ENTER ANY
TWO NUMBERS, EACH"
BH 198 INPUT"WITH VALUES LESS
{SPACE}THAN 5";X,Y
DR 208 IF X>5 OR Y>5 THEN 180
HP 210 PRINTCHRS$ (147)
XM 226 FL=1:GOSUB 266
MR 230 POKE 198,0:WAIT 198,1
QP 240 FL=6:GOSUB 266
SF 250 END
RR 266 FOR T=l TO 2*PI*160+(10
*PI* (X+Y))
JK 276 SYS 828, (1+SIN(X*T)) *49
1 (1+COS (¥*T))*25,FL,C
SD 286 NEXT
SK 296 RETURN
Matthew Spinks, who wrote Loader-
Maker (May 1991), lives in Erica, Victo-
ria, Australia. a
RAPIDFORMAT 128
By Mahmood Hasan Merchant
A number of fast formatting programs
have been around for the 64 ever since
the 1541 disk drive was introduced by
Commodore. These programs greatly im-
prove the performance of the drive in
terms of time saved.
Commodore probably took a lesson
from these programmers and added a
much more efficient format routine into
its 1571 disk drive. The drive formats a
double-sided disk in 41 seconds, but
wouldn't we all appreciate an even fast-
er procedure? AapidFormat 128
should do the trick.
RapidFormat 128 is an easy-to-use,
prompt-driven program for the 128 that
cuts almost in half the time required to
format all 70 tracks of a double-sided
disk. It will format a single-sided disk in
a mere 12 seconds.
Getting Started
RapidFormat 128 is written entirely in
BASIC. To help prevent typing errors,
use The Automatic Proofreader to
type it in; see “Typing Aids” elsewhere
in this section. When you've finished typ-
ing, be sure to save a copy of the pro-
gram. When you type RUN, the data
will be read and written to disk as
RapidFormat, a machine language pro-
gram.
Once RapidFormat has been gener-
ated, it can be loaded and activated
with the command RUN “RAPIDFOR-
MAT". At this point you should remove
the disk containing the program and in-
sert the disk which is to be formatted.
You are prompted to indicate whether
you wish to format only the top side (for
1541 use) or both sides of the disk. If
you frequently need to access your
files both in the 64 and 128 modes,
then it may be a good idea to format on-
ly the top side of the disk. This will pre-
vent the annoying /Ilegal Track or Sec-
tor error message which results when
part of the file being accessed lies on
a disk's second side.
To V or Not to V?
Next you have to specify whether you
wish to verify the format. If verification
is enabled, each sector on every track
is read and checked for errors. If any
are spotted, they are reported by the
program. However, choosing this op-
tion will slow down the formatting some-
what. To format a disk at maximum
speed, omit the verify option.
This option is provided to meet the
needs of various users. Write errors oc-
cur rarely with the 1571, and if you
have reasonable faith in the head align-
ment of your drive (1571s are more
trustworthy in this regard than older
1541s), then you may save time by
choosing not to verify. As long as the
disk used is at least of average quali-
ty, there shouldn't be any problems.
If, however, the idea of not verifying
makes you nervous, then you have the
option. | would strongly advise you to
verify if you are using generic or low-
quality disks or if you wish to format
both sides of a disk which is certified
only for single-side use. In these cas-
es, the caution and the extra time are
probably worth it.
Enter a name for the disk as you
would in a conventional format routine.
Be sure it is no longer than 16 charac-
ters and is followed by a 2-character
ID. This ID is written as a sort of signa-
ture to every sector on the disk, and its
main purpose is to indicate to the
drive when a disk has been changed.
Once you press Return, the disk will
35
PROGRAMS
start to format. Make sure that the disk
containing RapidFormat is not in the
drive. To be safe, put write-protect
tabs on disks that contain programs or
valuable data. RapidFormat checks for
write-protect tabs. If it finds one, the
disk will not be formatted, and an error
message will be displayed. Using write-
protect tabs on all valuable disks is a
good practice to follow.
How It Works
RapidFormat works by reprogramming
the disk drive. It transfers a section of
code to the buffer at address $0500.
Once activated, the program copies
the standard format routine from the
drive ROM to the internal RAM and
makes a few changes to it.
If the verify option is not chosen,
these routines are bypassed. Addition-
al time is saved by using a fixed value
to space out sectors on all tracks. The
standard format routine writes and re-
writes on each track to calculate the in-
dividual length of gaps between sec-
tors.
This modification, coupled with fast-
er changing of tracks, brings about the
speed improvement of RapidFormat.
Disks formatted with this program
work just as well as those formatted us-
ing the standard routine.
RAPIDFORMAT 128
SH 106 BANK1:SCNCLR:COLOR@,15:C
OLOR4,15:COLORS,2
PRINTCHRS (18) "
{16 SPACES}786/110
{17 SPACES}";
PRINT"{11 SPACES}RAPIDFO
RMAT - 1571{11 SPACES}";
PRINT" COPYRIGHT 1991 -
{SPACE}COMPUTE PUBS INTL
LTD: "3
PRINT"{11 SPACES}ALL RIG
HTS RESERVED{16 SPACES}"
EC 26
PC 39
MQ 40
DE 59
SA=7169:EA=8153 :DT=16
PRINTCHRS$ (17) SPC (14) "REA
DING ML!"CHR$(17)CHRS (17
76
86
)
FORI=GTODT-2:READ D$:D=D
EC (D$)
166 CHAR1,11,10:PRINT"LOADI
NG AT:{2 SPACES}";HEX$ (
SA+1)
POKESA+I ,D:CK=CK+D:NEXT
READ D$:D=DEC (D$) :CK=C
KAND255
126 IFD<>CKTHENBEGIN
136 :PRINTCHR$(17)"DATA ERR
COMPUTE
96
116
DB
QK
G-36
XA
XA
MB
QR
Js
FC
BH
HM
HK
QK
XE
XM
XE
KF
BS
FG
Sx
PQ
xc
XB
PX
PH
149
158
168
176
189
196
200
210
226
1066
1619
14626
1636
1046
1656
1966
1676
1686
1696
1166
1116
1126
1136
1146
1156
1169
OR IN LINE";
: PRINT PEEK (65) +256*PEEK
(66) :STOP
BEND
SA=SA+DT-1:CK=@: IFSA<=E
AGOTO9G
PRINTCHR$ (17) CHRS$ (17) "P
RESS "CHRS$(18)" RETURN
{SPACE}";
PRINTCHR$ (146)" TO SAVE
‘RAPIDFORMAT '"; : INPUTD
$
BSAVE"RAPIDFORMAT",B1,P
(7169) TO P(EA+1):PRINT
Ds$
END
DATA 49,1C,GA,80,99,22
193,22,A3,35,29,22,12,
26,52,86
DATA 20,41,20,50,20,49
120,44,20,46,20,4F, 20,
52,20,05
DATA 4D,20,41,20,54,20
,2D,20,31,35,37,31,20,
92,22,31
DATA 3A,20,4E,24,B2,22
722,3A,56,24,B2,22,22,
3A,49,EF
DATA 44,24,B2,22,22,3A
153,24,B2,22,22,00,74,
1c,14,A9
DATA GG,99,A3,35,29,22
,12,20,20,20,28,31,39,
39,30,29
DATA 29,20,20,4D,41,48
,4D,4F,4F,44,20,4D,45,
52,43,B5
DATA 48,41,4E,54,20,20
120,92,22,00,9E,1C,1E,
6G,99,BG
DATA 22,11,11,46,4F,52
74D, 41,54,20,54,59,50,
45,3A,A9
DATA 20,20,12,20,31,20
,92,20,20,42,4F,54,48,
26,53,35
DATA 49,44,45,53,11,22
,00,BE,1C,28,00,99,A3,
31,34,FB
DATA 29,22,12,20,32,20
192,20,26,54,4F, 50,20,
53,49,50
DATA 44,45,26,4F,4E,4C
159,22,00,D4,1C, 32,88,
99,A3,6B
DATA 31,35,29,22,11,31
,9D,9D,9D,22,3B,3A,85,
53,24,5D
DATA GG,EC,1C,3C,60,8B
,A8,53,24,B2,22,31,22,
AF ,A8,6C
DATA 53,24,B2,22,32,22
,89,35,30,00,FF,1C,41,
0G,8B,74
DATA 53,24,B2,22,32,22
»A7,53,24,B2,22,38,22,
AJ
XB
EJ
GS
AB
EX
BB
XR
MX
XX
PK
HD
BB
PM
AX
EH
RK
EK
GA
FE
XD
ME
RB
1176
1186
1196
1266
12196
1226
1236
1246
1258
1266
1276
1286
1296
1366
1316
1326
1336
1346
1356
1366
1376
1386
1396
00,12,F5
DATA 1D,43,00,53,24,B2
,C7,28,C6,28,53,24,29,
AB, 34,E5
DATA 38,29,00,38,1D,46
10G,99,22,11,11,56,45,
52,49,0F
DATA 46,59,3F,20,28,59
,2F,4E,29,22,A3,31,35,
29,22,9B
DATA 4E,9D,9D,9D,22,3B
,3A,85,4E,24,00,50,1D,
50,006,706
DATA 8B,A8,4E,24,B2,22
159,22,AF,A8,4E,24,B2,
22,4E,DF
DATA 22,89,31,30,00,6A
,1D,55,00,56,24,B2,22,
36, 22,88
DATA 3A,8B,4E,24,B2,22
159,22,A7,56,24,B2,22,
31,22,CE
DATA @0,7D,1D,57,00,56
»24,B2,C7,28,C6,28,56,
24,29,9D
DATA AB,34,38,29,00,94
,1D,5A,00,99,22,11,11,
4E,41,B7
DATA 4D,45,22,A3,31,33
129,3B,3A,85,4E,24,00,
AD,1D,1A
DATA 64,00,8B,C3,28,4E
,24,29,B2,30,B0,C3,28,
4E,24,64
DATA 29,B1l,31,36,89,31
,30,00,C2,1D,6E,00,99,
22,11,44
DATA 49,44,22,A3,31,33
,29,3B,3A,85,49,44,24,
GG,D4,5E
DATA 1D,78,60,8B,C3,28
149,44,24,29,B3,Bl,32,
89,31,35
DATA 30,00,DE,1D,82,00
,9E,37,37,32,38,00,FB,
1D,8C,BF
DATA 60,99,A3,31,34,29
,22,11,11,11,12,26,46,
4F,52,38
DATA 4D,41,54,54,49,4E
147,20,92,22,00,26,1E,
96,00,C2
DATA 9F,31,35,2C,38,2C
131,3573A,98,31,35,2C,
22,55,D6
DATA 34,22,53,24,56,24
149,44,24,22,2C,22,4E,
24,3A,14
DATA AG,31,35,3A,99,44
153724,00,00,00,A6,BA,
AG, GF,A3
DATA A9,G0,20,38,F7,85
,B7,20,CG,EF,A6,B8, 20,
C9,FF,59
DATA 26,7D,FF,55,30,3E
,52,01,00,20,CC,FE,A9,
65,AG,EB
DATA 00,85,FB,84,FA,A2
XA
BH
DH
EF
EE
RR
ony
BD
CR
HG
RR
SM
MG
BR
AG
PG
GP
HJ
Jc
RC
HQ
PX
1496
1416
1426
1436
1446
1458
1466
1476
1486
1496
1568
1516
1526
1536
1540
1556
1560
15768
1586
1596
1690
1616
,OA,86,FE,A9,AF,85,FC,
A9,1E,CE
DATA 85,FD,A5,BA,29,3E
,E3,A9,6F,20,D2,E4,A9,
4D, 26,26
DATA @3,E5,A9,2D,20,03
1E5,A9,57,20,03,E5,A5,
FA, 26,8D
DATA @3,E5,A5,FB, 20,03
,E5,A9,20,20,03,E5,AG,
00,B1,B2
DATA FC,26,03,E5,C8,CO
120,90,F6,20,26,E5,18,
A5,FC,16
DATA 69,20,85,FC, 90,02
,E6,FD,18,A5,FA, 69,20,
85,FA,3E
DATA 96,02,£6,FB,C6,FE
,DO,AF,4C,E7,FF,4C, 46,
@5,20,9F
DATA C2,05,20,7C,87 ,A2
,00,86,0B,A2,24,86,GA,
AD, 62,22
DATA G2,85,1F,F6,08,A9
,BG,85,62,A5,02,30,FC,
A2,01,F4
DATA 86,GA,A9,EG,85,02
7A5,02,3G0,FC,C9, 62,98,
63,4C,1D
DATA GA,E6,26,05,FG,A9
124,A6,1F,F@,62,A9,47,
AG, 87,20
DATA 8C,7A,82,4C,73,A7
,AD,GG,1C,29,10,D0,05,
A9,68,F6
DATA 4C,B5,99,A9,60,85
120,A5,GA,85,51,85,67,
20,4B,24
DATA F2,85,43,20,50,06
,A5,1F,FG,16,26,F8,93,
18,A5,5C
DATA 51,69,23,85,51,20
,50,06,20,F5,93,A6,GA,
E8,E6,49
DATA 24,DG,12,86,14,20
,E7,87,C6,14,D8,E9,A2,
12,86,0B
DATA GA,A9,61,4C,B5,99
,86,GA,BD,08,94,85,44,
AD,@G,AD
DATA 1C,29,9F,65,44,8D
,00,1C,20,DF,87,20,DF,
87,A5,87
DATA 1F,D@,03,4C, 46,45
,C6,64,C6,64,26,F8,93,
20,DF,87
DATA 87,20,DF,87,20,F5
193,4C,46,05,20,FE,5,
A9,E9,G1
DATA AG,G6,8D,77,87,8C
,78,07,A9,81,8D,CD, 06,
A9,GA,79
DATA 8D,26,86,A9,08,8D
126,06,A9,C5,AG,07,8D,
B9,67,7E
DATA 8C,BA,07,A9,6G,8D
,EE,07,AD,@3,62,D8,05,
A9,4C,54
KX 1620 DATA 8D,9A,07,60,B1,14
791,2C,C8,60,AD,04,02,
AC,@5,9C
DATA 62,85,12,84,13,A9
193,AG,9B,85,14,84,15,
A9, 06,88
DATA AG@,50,85,2D,84,2C
,AG,00,20,F8,65,D0,EB,
E6,15,D5
DATA E6,2D,20,F8,05,CO
,9E,DG,F9,68,08,00,98,
06, 00,B7
AM 1636
DC 1646
FF 1656
Mahmood Hasan Merchant is an ec-
onomics student at the London School
of Economics and Political Science. He
is from Pakistan. a
TYPING AIDS
MLX, the machine language entry program
for the 64 and 128, and The Automatic
Proofreader are utilities that help you type
in Gazette programs without making mis-
takes, These labor-saving utilities are oneach
Gazette Disk and printed in issues of Gazette
through June 1990.
If you don't have access to a back issue or to
one of ourdisks, write and we'll send you free
copies of both of these handy utilities. We'll
also include instructions on how to type in
Gazette programs. Please enclose a self-ad-
dress, stamped envelope. Write to Typing
Aids, COMPUTE's Gazette, 324 West Wen-
dover Avenue, Greensboro, North
Carolina 27408.
Gazette is looking for utilities,
games, applications, educa-
tional programs, and tutorial ar-
ticles. If you've created a
program that you think other
readers might enjoy or find
useful, send it on disk to
Gazette Submissions Reviewer
COMPUTE Publications
324 W. Wendover Ave.
Ste. 200
Greensboro, NC 27408
Please enclose an SASE if you
wish to have the materials
returned.
ONLY
ON DISK
Inaddition to the type-in programs
found in each issue of the maga-
zine, Gazette Disk offers bonus
programs andoriginal 64 and 128
artwork. Here are the programs
featured this month.
Super Cataloguer 128
Diego Martin Zamboni
Mexico City, Mexico
Catalogue all of your software (up to
2500 titles) quickly and easily with
this outstanding utility for the 128. An
80-column monitor is required.
Read a disk directory, select which
files you wish to add to the list, and
then save them, sort them, search
through them, and delete names at
the touch of a key. If you can't recall
the contents of afile, the program will
listitto the screen. It even works with
sequential, user, and relative files.
Super Cataloguer 128 is also a
great disk manager. You can edit
filenames and delete files, whole
disks, or even portions of disks. The
program provides memory informa-
tion, prints lists in several modes,
and much more. This is one utility all
128 users should have.
Spanish Vocabulary Quiz
Christopher M. Stoy
Edensburg, PA
To help you use Spanish Vocabulary
Quiz, one of this issue's type-in pro-
grams, see page G-25, we have
included ten vocabulary files, con-
taining dozens of English words and
their Spanish equivalents. Load and
use any of these files from the
program's main menu.
37
MLX
Machine Language Entry Program for Commodore 64
Ottis R. Cowper
Type in and save some copies of
MLX—you'll want to use it to enter fu-
ture ML programs from Gazette. When
you're ready to enter an ML program,
load and run MLX. It asks you for a start-
ing address and an ending address.
These addresses appear in the article
accompanying the MLX-format pro-
gram listing you're typing.
If you're unfamiliar with machine lan-
guage, the addresses (and all other val-
ues you enter in MLX) may appear
strange. Instead of the usual decimal
numbers you're accustomed to, these
numbers are in hexadecimal—a base
16 numbering system commonly used
by ML programmers. Hexadecimal—
hex for short—includes the numerals 0-
9 and the letters A-F. But even if you
know nothing about ML or hex, you
should have no trouble using MLX.
After you've entered the starting and
ending addresses, you'll be offered the
option of clearing the workspace.
Choose this option if you're starting to
enter a new listing. If you're continuing
a listing that's partially typed from a pre-
vious session, don't choose this option.
A functions menu will appear. The first
option in the menu is Enter Data. If
you're just starting to type in a pro-
gram, pick this. Press the E key and
type the first number in the first line of
the program listing. If you've already
typed in part of a program, type the
line number where you stopped typing
at the end of the previous session (be
sure to load the partially completed pro-
gram before you resume entry). In any
case, make sure the address you en-
ter corresponds to the address of a
line in the listing you are entering. Oth-
erwise, you'll be unable to enter the da-
ta correctly. If you pressed E by mis-
take, you can return to the command
menu by pressing Return alone when
asked for the address. (You can get
back to the menu from most options in
the program by pressing Return with
no other input.)
Entering a Listing
Once you're in Enter mode, MLX
prints the address for each program
line for you. You then type in all nine
numbers on that line, beginning with
the first two-digit number after the co-
lon (:). Each line represents eight data
bytes and a checksum. Although an
G-38 COMPUTE
MLX-format listing appears similar to
the “hex dump" listings from a ma-
chine language monitor program, the
extra checksum number on the end al-
lows MLX to check your typing.
When you enter a line, MLX recalcu-
lates the checksum from the eight
bytes and the address and compares
this value to the number from the ninth
column. If the values match, you'll
hear a bell tone, the data will be add-
ed to the workspace area, and the
prompt for the next line of data will ap-
pear. But if MLX detects a typing error,
you'll hear a low buzz and see an er-
ror message. The line will then be re-
displayed for editing.
Invalid Characters Banned
Only a few keys are active while you're
entering data, so you may have to un-
earn some habits. You do not type
spaces between the columns; MLX au-
tomatically inserts these for you. You
do not press Return after typing the
ast number in a line; MLX automatical-
ly enters and checks the line after you
type the last digit.
64 MLX Keypad
Only the numerals 0-9 and the let-
ters A-F can be entered. If you press
any other key (with some exceptions
noted below), you'll hear a warning
buzz. To simplify typing, a numeric key-
pad function is included. The keypad
is active only while entering data. Ad-
dresses must be entered with the nor-
mal letter and number keys. The figure
below shows the keypad configuration.
MLX checks for transposed charac-
ters. If you're supposed to type in AO
and instead enter OA, MLX will catch
your mistake. There is one error that
can slip past MLX: Because of the
checksum formula used, MLX won't no-
tice if you accidentally type FF in
place of 00, and vice versa. And
there's a very slim chance that you
could garble a line and still end up
with a combination of characters that
adds up to the proper checksum. How-
ever, these mistakes should not occur
if you take care while entering data.
Editing Features
To correct typing mistakes before fin-
ishing a line, use the Inst/Del key to de-
lete the character to the left of the cur-
sor. If you mess up a line badly, press
Cir/Home to start the line over. The Re-
turn key is also active, but only before
any data is typed on a line. Pressing Re-
turn at this point returns you to the com-
mand menu. After you type a charac-
ter, MLX disables Return until the cur-
sor returns to the start of a line. Remem-
ber, press Clr/Home to quickly get to a
line-number prompt. To make correc-
tions in a line that MLX has redisplayed
for editing, compare the line on the
screen with the one printed in the list-
ing and then move the cursor to the mis-
take and type the correct key. The cur-
sor-left and -right keys provide the nor-
mal cursor controls. (The Inst/Del key
now works as an alternative cursor-left
key.) You cannot move left beyond the
first character in the line. If you try to
move beyond the rightmost character,
you'll reenter the line. During editing, Re-
turn is active; pressing it tells MLX to re-
check the line. You can press the Clr/
Home key to clear the entire line if you
want to start from scratch or if you
want to get to a line-number prompt to
use Return to get back to the menu.
Display Data
The second menu choice, Display Da-
ta, examines memory and shows the
contents in the same format as the pro-
gram listing (including the checksum).
When you press D, MLX asks you for a
starting address. Be sure that the start-
ing address you give corresponds to a
line number in the listing. Otherwise,
the checksum display will be meaning-
less. MLX displays program lines until
it reaches the end of the program, at
which point the menu is redisplayed.
You can pause the display by pressing
the space bar. (MLX finishes printing
the current line before halting.) Press
the space bar again to restart the dis-
play. To break out of the display and
get back to the menu before the end-
ing address is reached, press Return.
Other Menu Options
Two more menu selections let you
save programs and load them back in-
to the computer. These are Save File
and Load File. When you press S or L,
MLX asks you for the filename. You'll
then be asked to press either D or T to
select disk or tape.
You'll notice the disk drive starting
and stopping several times during a
load or save. This is normal behavior.
MLX opens and reads from or writes to
the file instead of using the usual
LOAD and SAVE commands. Also
note that the drive prefix 0: is added to
the filename (line 750), so this should
not be included when entering the
name. This also precludes the use of
@ for save-with-replace, so be sure to
give each version saved a different
name.
Remember that MLX saves the en-
tire workspace area from the starting ad-
dress to the ending address, so the
save or load may take longer than you
might expect if you've entered only a
small amount of data from a long list-
ing. When you're saving a partially com-
pleted listing, make sure to note the ad-
dress where you stopped typing.
MLX reports the standard disk or
tape error messages if any problems
are detected during the save or load.
It also has three special load error mes-
sages: INCORRECT STARTING AD-
DRESS, which means the file you're try-
ing to load does not have the starting
address you specified when you ran
MLX; LOAD ENDED AT address,
which means the file you're trying to
load ends before the ending address
you specified when you started MLX;
and TRUNCATED AT ENDING AD-
DRESS, which means the file you're try-
ing to load extends beyond the ending
address you specified when you start-
ed MLX. If you see one of these mes-
sages and feel certain that you've load-
ed the right file, exit and rerun MLX, be-
ing careful to enter the correct starting
and ending addresses.
The Quit menu option has the obvi-
ous effect—it stops MLX and enters BA-
SIC. The Run/Stop key is disabled, so
the Q option lets you exit the program
without turning off the computer. (Of
course, Run/Stop-Restore also gets
you out.) You'll be asked for verifica-
tion; press Y to exit to BASIC, or press
any other key to return to the menu. Af-
ter quitting, you can type RUN again
and reenter MLX without losing your da-
ta, as long as you don’t use the Clear
Workspace option.
The Finished Product
When you've finished typing all the da-
ta for an ML program and saved your
work, you're ready for the results. Re-
fer to the corresponding article for
details on loading and running the
program.
An Ounce of Prevention
Don't take chances—use The Automat-
ic Proofreader to type the new MLX,
and then test your copy thoroughly be-
fore first using it to enter any significant
amount of data. Make sure all the
menu options work as they should. En-
ter fragments of the program starting at
several different addresses; then use
the display option to verify that the da-
ta has been entered correctly. Test the
save and load options to ensure that
you can recall your work from disk.
64 MLX
SS 19 REM VERSION 1.1: LINES 8
30,956 MODIFIED, LINES 4
85-487 ADDED
106 POKE 56,50:CLR:DIM INS,
I,J,A,B,A$,B$,A(7) ,NS
C4=48:C6=16:C7=7:22=2:2
4=254:25=255:26=256:27=
127
FA=PEEK (45) +Z6*PEEK (46)
?BS=PEEK (55) +26* PEEK (56
) :H$="6123456789ABCDEF"
RS=CHRS (13) :L$="{LEFT}"
:S$="_":DS=CHR$ (26) :Z$=
CHRS (6) :TS$="{13 RIGHT}"
SD=54272:FOR I=SD TO SD
+23:POKE I,@:NEXT:POKE
{SPACE}SD+24,15:POKE 78
8,52
PRINT" {CLR}"CHRS$ (142)CH
R$(8):POKE 53280,15:POK
E 53281,15
PRINT TS" {RED} {RVS}
{2 SPACES}{8 @}
EK
DM 116
CJ 126
SB 136
cQ 146
FC 156
EJ 166
FR
JB
GF
KR
PG
DR
BD
Js
JH
HK
FD
EJ
PP
RR
BE
176
186
196
266
216
226
236
246
256
260
276
289
296
388
316
320
336
346
358
366
379
{2 SPACES}"SPC(28)"
{2 SPACES}{OFF}{BLU} ML
X II {RED}{RVS}
{2 SPACES}"spc(28)"
{12 SPACES}{BLU}"
PRINT"{3 DOWN}
{3 SPACES}COMPUTE!'S MA
CHINE LANGUAGE EDITOR
{3 DOWN}"
PRINT" {BLK}STARTING ADD
RESS{4}"; :GOSUB30G:SA=A
D:GOSUB1646:IF F THEN18
8
PRINT" {BLK}{2 SPACES}EN
DING ADDRESS{4}"; :GOSUB
360:EA=AD:GOSUB1030: IF
{SPACE}F THEN19@
INPUT"{3 DOWN} {BLK}CLEA
R WORKSPACE [Y/N] {4}";A
$:IF LEFTS(AS$,1)<>"Y"TH
EN226
PRINT" {2 DOWN} {BLU}WORK
ING...";:FORI=BS TO BS+
EA-SA+7:POKE I,@:NEXT:P
RINT"DONE"
PRINTTAB(16)"{2 DOWN}
{BLK}{RVS} MLX COMMAND
{SPACE}MENU {DOWN}{4}":
PRINT TS"{RVS}E{OFF}NTE
R DATA"
PRINT TS"{RVS}D{OFF}ISP
LAY DATA":PRINT TS"
{RVS}L{OFF}OAD FILE"
PRINT TS"{RVS}S{OFF}AVE
FILE":PRINT TS"{RVS}Q
{OFF}UIT{2 DOWN}{BLK}"
GET AS$:IF AS=NS$ THEN259
A=6:FOR I=l1 TO 5:IF AS=
MIDS ("EDLSQ",I,1)THEN A
=I:1=5
NEXT:ON A GOTO42G,610,6
96,700,286:GOSUB1069:GO
T0256
PRINT"{RVS} QUIT ":INPU
T"{DOWN}{4}ARE YOU SURE
[Y/N] ";AS:IF LEFTS(AS,
1) <>"Y¥"THEN226
POKE SD+24,6:END
INS=N$:AD=@: INPUTINS: IF
LEN (INS) <>4THENRETURN
BS=IN$:GOSUB320:AD=A:B$
=MID$ (INS,3) :GOSUB320:A
D=AD*256+A: RETURN
A=6:FOR J=1 TO 2:AS=MID
$(BS$,J,1) :B=ASC (A$) -C4+
(AS>"@") *C7:A=A*C6+B q
IF B<@ OR B>15 THEN AD=
O:A=-1:J3=2
NEXT: RETURN
B=INT(A/C6) :PRINT MIDS (
H$,B+1,1) ;:B=A-B*C6: PRI
NT MIDS (H$,Bt+1,1);:RETU
RN
A=INT (AD/Z6) :GOSUB350:A
=AD-A*Z6:GOSUB35@: PRINT
nen,
2"5
CK=INT (AD/Z6) :CK=AD-24*
6-39
Gc
HA
HD
FK
Gs
FX
CM
MP
KC
MX
GK
HG
Qs
PM
Qc
PK
HI
QQ
G-40
388
398
408
410
426
436
448
456
465
476
489
485
486
487
496
588
518
526
539
546
556
566
576
586
599
CK+Z5* (CK>Z7) : GOTO398
CK=CK*Z2+25* (CK>Z7) +A
CK=CK+Z5* (CK>Z5) : RETURN
PRINT" {DOWN}STARTING AT
{£4}"; :GOSUB3G0:IF INS<>
NS THEN GOSUB1@3G:IF F
{SPACE} THEN468
RETURN
PRINT"{RVS} ENTER DATA
{SPACE}":GOSUB40@:IF IN
S=N$ THEN226
OPEN3,3:PRINT
POKE198,8:GOSUB36@:IF F
THEN PRINT INS:PRINT"
{uP}{5 RIGHT}";
FOR I=@ TO 24 STEP 3:BS
=S$:FOR J=1 TO 2:IF FT
HEN BS$=MID$(INS,I+J,1)
PRINT" {RVS}"BSL$;:IF I<
24THEN PRINT" {OFF}";
GET AS:IF AS=N$ THEN476
IF (AS>"/"ANDAS<":")OR(A
$>"@"ANDAS<"G") THEN540
Ren (ase"M") =28 (Ase, ") =
3* (AS )-4* (AS="/")-5
* (AS="J") -6* (AS="K")
A=A-7* (AS="L") -8* (AS="=
") -9* (AS="U") -10* (AS="I
")-11* (AS="0") -12* (AS="
Pp")
A=A-13* (AS=S$) :IF A THE
N AS=MID$ ("ABCD123E456F
6",A,1):GOTO 548
IF AS=RS$ AND((I=6)AND(J
=1)OR F)THEN PRINT BS$;:
J=2:NEXT: 1=24:GOTO556
IF AS="{HOME}" THEN PRI
NT BS$:J=2:NEXT:1=24:NEX
T:F=6:GOT044G
IF (AS="{RIGHT}")ANDF TH
ENPRINT BSL$;:GOTO546
IF A$<>L$ AND AS<>D$ OR
((1=6) AND (J=1))THEN GOS
UB1668:GOTO479
AS=LS+S$+L$:PRINT BSL$;
:J=2-J:1IF J THEN PRINT
{SPACE}L$;:I=I-3
PRINT A$;:NEXT J:PRINT
{SPACE}S$;
NEXT I: PRINT: PRINT" {UP}
{5 RIGHT}"; :INPUT#3,INS
:IF INS=N$ THEN CLOSE3:
GOTO228
FOR I=1 TO 25 STEP3:BS=
MIDS (INS, I) :GOSUB32@:IF
I<25 THEN GOSUB38G:A (I
73)=A
NEXT:IF A<>CK THEN GOSU
B166G: PRINT" {BLK} {RvS}
{SPACE}ERROR: REENTER L
INE {4}":F=1:GOT044G
GOSUB108G:B=BS+AD-SA:FO
R I=@ TO 7:POKE B+I,A(I
) NEXT
AD=AD+8:IF AD>EA THEN C
LOSE3: PRINT" {DOWN} {BLU}
** END OF ENTRY ** {BLK}
{2 DOWN}":GOTO7G6
COMPUTE
GQ
QA
RJ
KS
PE
FC
Gs
MA
GE
RX
FA
FQ
SA
609
616
629
636
645
655
666
676
686
696
768
716
726
736
7468
758
766
776
786
796
866
81g
820
839
846
850
866
F=6:GOTO44G
PRINT" {CLR} {DOWN} {RVS}
{SPACE}DISPLAY DATA ":G
OSUB40@:IF INS=NS$ THEN2
20
PRINT" {DOWN} {BLU} PRESS:
{RVS}SPACE{OFF} TO PAU
SE, {RVS}RETURN{OFF} TO
BREAK{4}{DOWN}"
GOSUB36@:B=BS+AD-SA:FOR
I=BTO B+7:A=PEEK (I) :GOS
UB350:GOSUB380:PRINT S$
7
NEXT: PRINT" {RVS}"; :A=CK
:GOSUB356: PRINT
F=1:AD=AD+8:IF AD>EA TH
ENPRINT" {DOWN} {BLU}** E
ND OF DATA **":GOTO229
GET AS:IF A$=R$ THEN GO
SUB1980:GOTO226
IF AS$=S$ THEN F=F+1:GOS
UB168¢
ONFGOT0630, 666,630
PRINT"{DOWN}{RVS} LOAD
{SPACE}]DATA ":OP=1:GOTO
716
PRINT"{DOWN} {RVS} SAVE
{SPACE}FILE ":0P=0
INS=NS: INPUT" {DOWN} FILE
NAME{4}";INS:IF INS=NS
{SPACE} THEN22G
F=@: PRINT" {DOWN} {BLK}
{RVS}T{OFF}APE OR {RVS}
D{OFF}ISK: {4}";
GET AS$:IF AS="T"THEN PR
INT" T {DOWN}":GOTO88G
IF AS<>"D"THEN736
PRINT"D{DOWN}":OPEN15,8
,15,"10:":B=EA-SA: INS="
G:"+INS:IF OP THENS19
OPEN 1,8,8,INS$+",P,W":G
OSUB869:IF A THEN22¢
AH=INT(SA/256) :AL=SA-(A
H*256) : PRINT#1,CHRS$ (AL)
7CHRS (AH) ;
FOR I=8 TO B:PRINT#1,CH
R$ (PEEK(BS+I));:IF ST T
HENSGG
NEXT :CLOSE1:CLOSE15:GOT
0946
GOSUB1960: PRINT" {DOWN}
{BLK}ERROR DURING SAVE:
{4}":GOSUB86G:GOTO229
OPEN 1,8,8,INS+",P,R":G
OSUB860:IF A THEN22¢
GET#1,A$,B$:AD=ASC (AS+Z
$) +256*ASC(BS+Z$):IF AD
<>SA THEN F=1:GOT0856
FOR I=0 TO B:GET#1,A$:P
OKE BS+I,ASC(A$+Z$) :IF(
I<>B)AND ST THEN F=2:AD
=I:I=B
NEXT:IF ST<>64 THEN F=3
CLOSE1:CLOSE15:0N ABS (F
>G)+1 GOTO969,976
INPUT#15,A,AS:IF A THEN
CLOSE1:CLOSE15:GOSUB16
60:PRINT"{RVS}ERROR: "A
GQ
EJ
HJ
cs
sc
KM
JF
AE
XP
FR
DP
PP
GR
FD
RX
FF
FX
CR
HC
AR
DX
PE
AC
876
880
890
980
916
926
936
948
950
968
978
989
996
1656
1618
1626
1636
1646
1956
1968
1676
1686
1996
$
RETURN
POKE183, PEEK (FA+2) : POKE
187, PEEK (FA+3) :POKE188,
PEEK (FA+4) : IFOP=GTHEN92
G
SYS 63466:1F (PEEK(783)A
ND1)THEN GOSUB1660: PRIN
T"{DOWN}{RVS} FILE NOT
{SPACE}FOUND ":GOTO699
AD=PEEK (829) +256*PEEK (8
3G):IF AD<>SA THEN F=1:
GOTO97G
A=PEEK (831) +256*PEEK (83
2)-1:F=F-2* (A<EA) -3* (A>
A=SA:B=EA+1:GOSUB1010:P
OKE78@,3:SYS 63338
A=BS:B=BS+(EA-SA) +1:GOS
UB1G1@:ON OP GOTO95G:SY
S 63591
GOSUB168G: PRINT" {BLU }**
SAVE COMPLETED **":GOT
0226
POKE147,@:SYS 63562:IF
{SPACE}ST>@ THEN97@
GOSUB198@: PRINT" {BLU}**
LOAD COMPLETED **":GOT
0226
GOSUB166G: PRINT" {BLK}
{RVS}ERROR DURING LOAD:
{DOWN} {4}":ON F GOSUB98
G,99G6,1966:GOTO22G
PRINT"INCORRECT STARTIN
G ADDRESS (";:GOSUB36@:
PRINT") ": RETURN
PRINT"LOAD ENDED AT ";:
AD=SA+AD:GOSUB36G: PRINT
D$:RETURN
PRINT"TRUNCATED AT END
ING ADDRESS":RETURN
AH=INT (A/256) :AL=A-(AH
*256) : POKE193,AL: POKEL
94,AH
AH=INT (B/256) :AL=B- (AH
*256) : POKE174,AL: POKE1
75,AH: RETURN
IF AD<SA OR AD>EA THEN
1658
IF (AD>511 AND AD<6528
6) THEN GOSUB1@8@: F=6
: RETURN
GOSUB196G: PRINT" {RVS}
{SPACE} INVALID ADDRESS
{DOWN} {BLK}":F=1:RETU
RN
POKE SD+5,31:POKE SD+6
,208:POKE SD,24G:POKE
{SPACE}SD+1,4:POKE SD+
4,33
FOR S=1 TO 10@:NEXT:GO
TO1698
POKE SD+5,8:POKE SD+6,
24@:POKE SD,@:POKE SD+
1,98:POKE SD+4,17
FOR S=l TO 160:NEXT:PO
KE SD+4,@:POKE SD,@:PO
KE SD+1,@:RETURN og